javascript - 在函数内分配全局变量

标签 javascript jquery javascript-events

我想在一个函数中分配全局变量值并在另一个函数中使用该变量。但由于某种原因,该变量在第二个函数中为空。

我的想法

函数 2 在函数 1 之前首先执行(如果是这种情况,我如何命令 jquery 开始执行特定的语句/函数?)

或者

函数 1 中的 myvar 全局变量未设置(如果是这种情况,实现此目的的替代方法是什么?)

var my_var;
//function 1
$(".div1").onhover(function(){
my_var="hello"
});

//function 2
$(".div1").onhover(function(){
 //i want to make use of my_var here, but it is blank
});

 //I want to use my_var it somewhere here too, but it doesnt work

最佳答案

正确的函数是.hover ( more here ); .onhover是不正确的。下面的代码按照您要求的方式工作( live example )。

HTML

<div id="TestID" class="div1">This is a test.</div>​

JavaScript
var my_var;
//function 1
$(".div1").hover(function(){
    my_var=$(this).attr('id'); 
});

//function 2
$(".div1").hover(function(){
    alert(my_var);
});​

以下是一些有关 JavaScript 全局变量的其他有用链接:
  • How to declare a global variable in JavaScript?
  • How to store a global value (not necessarily a global variable) in jQuery?
  • Global variables in Javascript
  • 关于javascript - 在函数内分配全局变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13655930/

    相关文章:

    javascript - jQuery div 扩展高度不起作用

    javascript - 将 DOM 样式分配给 var

    javascript - 关于javascript中事件执行的问题

    javascript - 查询选择器属性值以空字符串开头失败

    javascript - 使用 jQuery 根据其 data-* 属性显示/隐藏内容

    javascript - 切换列表图像并展开所有带有无序列表的 jquery Accordion

    javascript - 为什么游戏时间缩短了一半而不是 2 秒?

    javascript-events - Javascript : "onchange" event does not work with "value" change in "text input" object

    php - 如何从url中删除路径信息?

    javascript - 如何在javascript中为两个数组的每个循环使用一个?