有原生DOM获取以及用js库比如jquery
原生DOM的话首先获取标签对象,id或者name或其他
例:
1
<p id="targetp" >2333333</p>
<script>
var element = documentgetElementById("targetp");
var tagname = elementtagName;
alert(tagname);
</script>
jQuery获取
$("#content-header")get(0)tagName
如果已经获取到对象可以直接获取标记名
<p onclick="alert('您单击的是:'+thistagName);">中华人民共和国</p>
参考:
// ie9以前
if (!Node) {
var Node = {};
}
if (!NodeCOMMENT_NODE) {
// numeric value according to the DOM spec
NodeCOMMENT_NODE = 8;
}
function getComments(elem) {
var children = elemchildNodes;
var comments = [];
for (var i=0, len=childrenlength; i<len; i++) {
if (children[i]nodeType == NodeCOMMENT_NODE) {
commentspush(children[i]);
}
}
return comments;
}
ie9以后:
function getAllComments(rootElem) {
var comments = [];
// Fourth argument, which is actually obsolete according to the DOM4 standard, is required in IE 11
var iterator = documentcreateNodeIterator(rootElem, NodeFilterSHOW_COMMENT, filterNone, false);
var curNode;
while (curNode = iteratornextNode()) {
commentspush(curNodenodeValue);
}
return comments;
}
windowaddEventListener("load", function() {
consolelog(getAllComments(documentbody));
});
先给你看下面两段代码:
<div id="div1">test!</div><script>
consolelog(documentgetElementById("div1")); //这个能够获得值
</script><script>
consolelog(documentgetElementById("div1")); //这个不能获得值!
</script>
<div id="div1">test!</div>
看出原因没有?当js代码是先于html运行时,是获取不到DOM元素的!因为这时候该DOM元素尚未加载到内存,相当于不存在!
要想实现js代码放到任何位置都能获得DOM元素,就要保证代码在页面完全加载完毕后才开始运行,比如:
<script>windowonload=function(){ //网页完全加载完毕才会触发这个事件
consolelog(documentgetElementById("div1")); //这时候就能获得了
}
</script>
<div id="div1">test!</div>
var create_dom = function(html){
var empty = new Element('div', {'html':html});
var el = emptygetFirst();
return el;
};
以上就是关于js怎样 获得当前选中位置元素的 html格式全部的内容,包括:js怎样 获得当前选中位置元素的 html格式、HTML如何获取comment(注释)元素对象、javascript 如何获得html DOM节点的属性值等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)