我的页面底部有一个JavaScript声明,只有在某个HTML评论可用时才会触发
<!-- mytriggercomment -->
在上面的示例中,如果在当前页面中检测到mytriggercomment
,则只有JavaScript语句才会触发。这样做的首选方式是什么?
答案 0 :(得分:1)
可能不适用于较旧的浏览器,但这种方式是逻辑DOM方法:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
<script>
window.onload = function () {
var treeWalker = document.createTreeWalker(
document,
NodeFilter.SHOW_COMMENT,
{acceptNode: function(node) {
if (node.nodeValue.trim() === 'mytriggercomment') {
return NodeFilter.FILTER_ACCEPT;
}
}}
);
var nodeList = [];
while(treeWalker.nextNode()) nodeList.push(treeWalker.currentNode);
alert(nodeList)
};
</script></head>
<body>
</body>
</html>
<!-- mytriggercomment -->
如果您知道它始终位于底部,您可以将其定位为:
window.onload = function () {
alert(document.documentElement.nextSibling &&
document.documentElement.nextSibling.nodeValue.trim() === 'mytriggercomment')
};