在这篇文章中,我们将为您详细介绍如何从对象标签获取html元素?的内容,并且讨论关于如何从对象标签获取html元素名称的相关问题。此外,我们还会涉及一些关于06-02-02获取HTML元素、angul
在这篇文章中,我们将为您详细介绍如何从对象标签获取html元素?的内容,并且讨论关于如何从对象标签获取html元素名称的相关问题。此外,我们还会涉及一些关于06-02-02 获取HTML元素 、angular – 如何从组件访问父HTML元素?、HTML,Javascript:当用户将HTML元素滚动到视图中时,如何加载HTML元素?、html5 – Angular 2:获取HTML元素的位置的知识,以帮助您更全面地了解这个主题。
本文目录一览:- 如何从对象标签获取html元素?(如何从对象标签获取html元素名称)
- 06-02-02 获取HTML元素
- angular – 如何从组件访问父HTML元素?
- HTML,Javascript:当用户将HTML元素滚动到视图中时,如何加载HTML元素?
- html5 – Angular 2:获取HTML元素的位置
如何从对象标签获取html元素?(如何从对象标签获取html元素名称)
如何解决如何从对象标签获取html元素??
只要将其放在同一域上,就可以执行以下操作:
HTML
<html>
<object id="t" data="/html_template" type="text/html">
</object>
</html>
JavaScript
var t=document.querySelector("#t");
var htmlDocument= t.contentDocument;
解决方法
我正在使用object标签在html页面中加载html代码段。
我的代码遵循以下原则:
<html><object data="/html_template"></object></html>
如预期的那样,页面加载后,在对象标记之间添加了一些元素。我想获取这些元素,但似乎无法访问它们。
我尝试了以下 $("object").html()
$("object").children()
$("object")[0].innerHTML
这些似乎都不起作用。有没有其他方法可以获取这些元素?
编辑:
更详细的示例:
考虑这个
<html><objectdata="http://www.YouTube.com/v/GGT8ZCTBoBA?fs=1&hl=en_US"></object></html>
如果我尝试在对象中获取html,则会得到一个空字符串。
06-02-02 获取HTML元素
2.2 获取HTML元素
DOM方法:是您能够在 HTML 元素上执行的动作。例:添加或删除 HTML 元素
DOM 属性:是您能够设置或改变的 HTML元素的值。例:改变 HTML 元素的内容
2.2.1 通过ID获取
格式:document.getElementById(id)
说明:通过元素 id 来查找元素,找到元素对象返回该元素,找不到则为null
通过ID获取元素是最快速的方法。
实践:获取id为div1的元素
HTML代码:
<div id="div1">div1......</div>
var div1=document.getElementById("div1");
console.log(div1);//<div id="div1"></div>
var div11=document.getElementById("div11");
console.log(div11);//null
2.2.2 通过类名获取
格式:
document.getElementsByClassName(name)
说明:通过相同的类名来查找元素,找到找不到都会返回HTMLCollection。
HTMLCollection是一个节点对象的集合,只能包含元素节点(element),不能包含其他类型的节点。它的返回值是一个类似数组的对象,只能使用for循环遍历。
HTMLCollection 是一个接口,表示 HTML 元素的集合,初学可以当成数组访问。
实践:获取类为div2的元素
HTML代码:
<div>div2......</div>
<div>div3......</div>
JS代码:
var div2 = document.getElementsByClassName("div2");
console.log(div2);//HTMLCollection
for (var i = 0; i < div2.length; i++) {
console.log(div2[i]);//输出所有找到的元素
}
2.2.3 通过标签名获取
格式:document.getElementsByTagName(name)
说明:通过标签名来查找所有元素,返回HTMLCollection。
tagname就是HTML标签
实践:获取标签为div的所有元素
var divs = document.getElementsByTagName("div");
console.log(divs);//HTMLCollection
for (var i = 0; i < divs.length; i++) {
console.log(divs[i]);//输出所有找到的元素
}
实践:获取所有标签
获取页面中的所有标签
for (var i = 0; i < document.all.length; i++) {
var element = document.all[i];//选取所有内容
console.dir(element);
document.write(element.tagName + " "); //输出标签名
}
2.2.4 通过 CSS 获取
格式:document.querySelectorAll()
说明:查找匹配指定 CSS 选择器(id、类名、类型、属性、属性值等等)的所有 HTML 元素,返回结果为NodeList。
例如:#div2(id="div2") .abc() div>p(<div><p></p></div>)
NodeList实例是一个类似数组的对象,它的成员是节点对象。
DOM除了处理单个节点,还提供了NodeList和HTMLCollection来容纳多个节点,主要区别是,NodeList可以包含各种类型的节点,HTMLCollection只能包含 HTML 元素节点。
NodeList可以用forEach和for变量,HTMLCollection可用for遍历,不能用forEach遍历。
HTML代码:
<p></p>
JS代码:
var divcss=document.querySelectorAll("#div2");
divcss.forEach(function(element){console.log(element)});//可以使用forEach来遍历内容。
console.log(divcss);//输出NodeLis
angular – 如何从组件访问父HTML元素?
constructor(private elRef: ElementRef){}
访问本机元素父级:
ngOnInit() { console.log(this.elRef.nativeElement.parentElement); }
HTML,Javascript:当用户将HTML元素滚动到视图中时,如何加载HTML元素?
解决方法
jquery-appear – 当元素变得可见时调用函数的jQuery插件
(通过SO:jQuery – Check if element is visible after scroling的另一个问题)
html5 – Angular 2:获取HTML元素的位置
/** current Y position of the native element. */ @HostBinding('style.top.px') public positionTop: number; /** current X position of the native element. */ @HostBinding('style.left.px') protected positionLeft: number;
问题是它们在开始时都是未定义的.我只能更新也会更新HTML元素的值,但我无法读取它?那是假设那样吗?如果是,我有什么替代方法来检索HTML元素的当前位置.
解决方法
<div (click)="move()">xxx</div>
// get the host element constructor(elRef:ElementRef) {} move(ref: ElementRef) { console.log(this.elRef.nativeElement.offsetLeft); }
另见https://stackoverflow.com/a/39149560/217408
今天关于如何从对象标签获取html元素?和如何从对象标签获取html元素名称的讲解已经结束,谢谢您的阅读,如果想了解更多关于06-02-02 获取HTML元素 、angular – 如何从组件访问父HTML元素?、HTML,Javascript:当用户将HTML元素滚动到视图中时,如何加载HTML元素?、html5 – Angular 2:获取HTML元素的位置的相关知识,请在本站搜索。
本文标签: