0

我有一个简单的书签,用于在 prompt() 中显示元元素的值。它可以工作,但在运行窗口后,只加载字符串“null”或提示值。

如何防止小书签导致页面加载?

我只想让脚本弹出提示,但什么也不做。

我的书市是这样的:

javascript:var%20description;var%20metas=document.getElementsByTagName('meta');for(var%20x=0,y=metas.length;x<y;x++){if(metas[x].name.toLowerCase()=="description"){description=metas[x];}}prompt("Meta%20Description",description.content);

..展开后看起来像这样:

var description;
var metas=document.getElementsByTagName('meta');
for(var x=0,y=metas.length;x<y;x++){
    if(metas[x].name.toLowerCase()=="description"){
        description=metas[x];
    }
}
prompt("Meta Description",description.content);
4

2 回答 2

4

这些天被接受的方式是将你的代码包装在一个“立即调用的函数表达式”中,像这样

(function(){ /*your code */})();

这比void(0);在末尾添加要好,因为将代码包装在函数中可以防止小书签中的命名变量和函数以及父 HTML 文档范围内的函数之间发生冲突。

换句话说,如果您在使用 JavaScript 代码和已经存在的变量“描述”的网页上运行您的书签,您可能会产生问题。

于 2012-12-10T08:20:53.180 回答
2

void(0);在它的末尾添加。

javascript:var%20description;var%20metas=document.getElementsByTagName('meta');for(var%20x=0,y=metas.length;x<y;x++){if(metas[x].name.toLowerCase()=="description"){description=metas[x];}}prompt("Meta%20Description",description.content);void(0);
于 2012-12-10T06:28:07.820 回答