Tag: 全局变量

jQuery – 使全局变量可用于多个插件

我有一组我正在为网站创建的jQuery插件。 所有这些插件都具有通用function,可以进行$ .getJSON()调用。 这些调用中传递的URL因Dev,QA和生产环境而异。 我想将URL存储在一个中心位置,以便可以轻松更改。 url应该存储在哪里? 我不想将URL存储在每个插件中。 可以将它定义为全局变量,还是将其作为传递给插件的参数更好?

jquery:在hover()函数中传递变量?

我可以在hover()中传递变量吗? 如下面的脚本,我不想声明相同的变量两次var target = xxx ,我不想让这个变量成为全局target = xxx bcos我还有其他函数使用这个变量名 – target。 $(‘.image-profile’).hover(function () { var target = $(‘.button-change-image-profile’,this); target.show(); },function () { //var target = $(‘.button-change-image-profile’,this); target.hide(); }); 所以我试着像这样传递var },function (target) { ,当然这是错误的,但是传递这个var的任何其他方法呢? 谢谢。

jquery-plugin中的全局变量或局部变量

如何为jquery-plugin提供单独的局部变量,这些变量可以在不同的插件函数中访问? 我的脚本显示内容为“123”的警报,但我期待’abc’。 所以变量’t’只存在一次而不是每个插件两次。 因此,对于每个插件实例,应该还有一个变量’t’的实例。 (function ($) { var t = null; $.fn.doSomething = function() { alert(t); } $.fn.myHtmlControl = function(option) { t = option; } })(jQuery); $(function () { $(‘#ctrl1’).myHtmlControl(“abc”); $(‘#ctrl2’).myHtmlControl(“123”); $(‘#ctrl1’).doSomething(); }) Ctrl1 Ctrl2

jQuery全局变量问题

var id = $(this).children().html(); // id is 5 $.ajax({ url: ‘ajax.php?id=’ + id, success: function(data) { id = data; // id is 1 } }); if(id == 1){ // id is again 5 … } 为什么在以下示例中我无法重新初始化id变量? 怎么了? 谢谢。

Javascript Local vs Global

我以为我把这个烂摊子整理在我的头脑中,但由于一些奇怪的原因它无法正常工作。 如果在函数/作用域之外声明一个变量并在函数内部没有var的情况下引用它,那么它会改变先前声明的变量……对吗? 但是,第一个警报返回正确的价格,但第二个(最后一个)警报返回0.我做错了什么? //get pricing var price=0; var modelid = $(“#model_input”).val(); var inCode = $(“#code_input”).val(); $.get(“getpricing.php”, { ‘modelid’: modelid ,’code’ : inCode }, function(data){ price = data; alert(price); }); alert(price);

无法在函数中的jQuery $ .get中访问全局变量

下面是一些我遇到问题的代码。 基本上,我将一个空数组定义为全局变量(var playlist = []),然后尝试在jQuery $ .get调用中向其添加元素。 从我在互联网上看到的内容来看,我应该可以做到这一点! 以下代码给出了错误:“无法调用未定义的方法’播放’”。 播放列表[0]确实在函数内设置,警告$ .get调用中的播放列表[0]给出了预期的结果,但它不会在函数外保留。 var playlist = []; function playArtist(artist){ $.get(‘media/songs/’ + artist, function(data){ for (var i in data){ playlist[i] = setSong(data[i].Resource.name,’track’ + data[i].Media.id,i + 1); } $(‘#track-total’).text(parseInt(playlist.length)); },’json’ ); playlist[0].play(); } 有人可以帮忙吗? 谢谢!

“严格使用”; + jQuery.getScript()= script无法导出到全局命名空间

假设我有以下脚本,名为include_strict.js 。 执行后我应该定义window.global1 : “use strict”; var globalVar = {}; alert(typeof window.globalVar); 但是,如果我从一个javascript块包含它 $.getScript(“include_strict.js”); 警报说undefined 。 为什么? 这里发生了什么? 仅供参考,如果我使用脚本标记包含文件,那就不会发生这种情况: 在这里,我看到预期的警报, object 。 如果我删除”use strict”; ,然后是jQuery.getScript()和; 具有相同的显示object效果。 我已经创建了一个示例( https://docs.google.com/file/d/0B-XXu97sL1Ckb0x0OHptTmVMY00/edit )来演示这一点。

jQuery:如何访问外部变量?

我处在一种需要用这种方式解决的情况; 需要将local variable转换为global variable 。 有一个例子返回图像的真实宽度和高度,我从这个答案中找到了这些方法。 。 需要将本地变量pic_real_height和pic_real_width转换为全局变量并返回其真值。 这是jsFiddle。 CSS: img { width:0px; height:0px; }​ jQuery: console.log($(‘.imgCon img’).height());//returns 0 var img = $(‘.imgCon img’)[0]; // Get my img elem var pic_real_width, pic_real_height; $(”).attr(‘src’, $(img).attr(‘src’)).load(function() { pic_real_width = this.width; pic_real_height = this.height; console.log( pic_real_width + ‘x’ + pic_real_height ); // — returns true 570×320 — }); […]