Javascript 如何防止bookmarklet加载其结果?

Javascript 如何防止bookmarklet加载其结果?,javascript,bookmarklet,Javascript,Bookmarklet,我有一个简单的bookmarklet,用于在提示符()中显示元元素的值。它可以工作,但在运行窗口后,只加载字符串“null”或提示值 如何防止bookmarklet导致页面加载? 我只是想让脚本弹出提示,但什么也不做 我的书签集是: javascript:var%20description;var%20metas=document.getElementsByTagName('meta');for(var%20x=0,y=metas.length;x<y;x++){if(metas[x].n

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

如何防止bookmarklet导致页面加载?

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

我的书签集是:

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);
javascript:var%20description;var%20metas=document.getElementsByTagName('meta');对于(var%20x=0,y=metas.length;xAdd
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);
javascript:var%20description;var%20metas=document.getElementsByTagName('meta');for(var%20x=0,y=metas.length;xAdd
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);

javascript:var%20description;var%20metas=document.getElementsByTagName('meta');for(var%20x=0,y=metas.length;x现在公认的方法是将代码包装成这样的“立即调用的函数表达式”

(function(){ /*your code */})();
这比在末尾添加
void(0);
要好,因为将代码包装在函数中可以防止bookmarklet和父HTML文档范围内的命名变量和函数之间的冲突


换句话说,如果在使用JavaScript代码和已有变量“description”的网页上运行bookmarklet,则可能会产生问题。

现在公认的方法是将代码包装成这样的“立即调用的函数表达式”

(function(){ /*your code */})();
这比在末尾添加
void(0);
要好,因为将代码包装在函数中可以防止bookmarklet和父HTML文档范围内的命名变量和函数之间的冲突


换句话说,如果您在使用JavaScript代码和已有变量“description”的网页上运行bookmarklet,那么,你可能会制造问题。

我尝试过返回%20false;和其他尝试创新方法失败的摸索尝试。我擅长这一点。我尝试过返回%20false;和其他尝试创新方法失败的摸索尝试。我擅长这一点。