如何在javascript中传递变量

发布于 2024-11-09 03:24:29 字数 648 浏览 0 评论 0原文

我正在基于此网站构建一个书签: http://www. Latentmotion.com/how-to-create-a-jquery-bookmarklet/

这是 bookmarlet 的代码:

javascript:(function(){
    var head=document.getElementsByTagName('head')0],
         script=document.createElement('script');
    script.type='text/javascript';
    script.src='http://myserver.com/bookmarlet-remote.js?' + Math.floor(Math.random()*99999);
    head.appendChild(script);
})(); 
void 0

如何将变量从 bookmarlet (上面的代码)传递到 bookmarlet-remote.js ?

我在 var myNewvar='myValue' 之后尝试过,但没有成功,有什么想法吗?

I am building a bookmarlet based on this site: http://www.latentmotion.com/how-to-create-a-jquery-bookmarklet/

This is the code of bookmarlet:

javascript:(function(){
    var head=document.getElementsByTagName('head')0],
         script=document.createElement('script');
    script.type='text/javascript';
    script.src='http://myserver.com/bookmarlet-remote.js?' + Math.floor(Math.random()*99999);
    head.appendChild(script);
})(); 
void 0

How I can pass a variable from the bookmarlet (above code), to bookmarlet-remote.js ?

I've tried after var myNewvar='myValue', without success, Any Idea?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

怎樣才叫好 2024-11-16 03:24:29

页面上的所有 JS 代码(包括小书签代码和脚本)都可以访问全局范围。如果您定义的变量不带 var 前缀,则所有其他脚本都可以使用该变量。

明确这一点可能是个好主意。 do window.myVar = "foo"; 清楚地表明您正在使用全局变量。

All JS code on a page (including bookmarklet code and scripts included have) have access to the global scope. If you define a variable without the var prefix it will be available to all other scripts.

It might be a good idea to be explicit about this. do window.myVar = "foo"; to clearly signal that you are working with global variables.

荆棘i 2024-11-16 03:24:29

在函数中使用 var 使其成为该函数的局部变量。要使其全局化,您必须将其添加到窗口的范围中,因此:

window.newVariable = window.newVariable || 'Your new value here';

window['newVariable'] = 'Your new value here';

Using var in the function makes it local to that function. To make it global you have to add it to the scope of the window, so:

window.newVariable = window.newVariable || 'Your new value here';

OR

window['newVariable'] = 'Your new value here';
猫腻 2024-11-16 03:24:29

您将创建一个公共变量。

window.rnd = Math.floor(Math.random()*99999);

在 bookmarlet-remote.js 中,您只需访问该变量。

You'd create a public variable.

window.rnd = Math.floor(Math.random()*99999);

In bookmarlet-remote.js you just access the variable.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文