草庐IT

block_until_this_function_has_bee

全部标签

javascript - jQuery 中转 : Object none has no method 'setFromString'

我已经在jQuerytransit中加载了,我确定我是在加载jQuery之后才做的,但我仍然得到这个错误:我查看了Chrome中的资源面板,在jQuery之后加载了jQuerytransit。它也已正确加载,并且没有出现任何问题。我也在控制台测试过,测试网站上的例子。他们都返回同样的错误。这是我的代码:$("#current-employersa.industry-company-link").click(function(e){e.preventDefault();varurl=$(this).attr("href");varcompany_container=$("#current

javascript - jQuery 延迟 : use to delay return of function until async call within function complete + get return value

如何正确使用jQuerydeferreds来延迟函数的返回,直到函数内的异步调用完成+获取返回值?这是我当前的代码:functiongetFields(page){vardff=$.Deferred();result={};$.ajax(//theasynccall{url:page,success:function(data){//workoutvaluesforfield1&field2fromdatahereresult={'field1':field1,'field2':field2};},complete:function(){dff.resolve(result);//my

javascript - 在 JavaScript 中使用 block 的返回值

在我测试过的许多浏览器上,JavaScriptblock实际上会返回一个值。您可以在任何控制台中对其进行测试:for(vari=0;i“返回”值是最后一个平方数,即9!但由于我想这不是一个表达式,所以你不能这样做:for(vari=0;i那是行不通的。它给出+5,或者5,当然,因为它是一个单独的语句。将循环放在括号中显然是失败的,如果一个block在括号中(例如({f();r})-不起作用)它被视为一个对象并抛出语法错误。利用返回值的一种方法是使用eval:eval('for(vari=0;i但如果eval是唯一的解决方案,我显然不想使用它。有没有一种方法可以在不使用我缺少的eval的

javascript - 为什么将 `this` 分配给 `self` 并运行 `self.method()` ?

我正在阅读来自mongoose的源代码Collection.prototype.onOpen=function(){varself=this;this.buffer=false;self.doQueue();};我不明白为什么作者将this赋值给self并运行self.doQueue()。为什么不直接运行:this.buffer=false;this.doQueue();我是javascript的新手,感谢您的帮助。 最佳答案 你是对的,在这种情况下,他们可以简单地使用this。使用me或self是为了确保使用正确的this上下文,

javascript - 为什么有些js文件以(function() {

很简单,为什么有些js文件(例如Ember或JQuery.js)以(function(){...})();开头? 最佳答案 (function(){/*codehere*/})()形式的代码被称为“立即调用的函数表达式”。它经常用于设置闭包,因此您可以在不污染全局范围的情况下定义变量。由于这个原因,您可以在Ember、jQuery和几乎所有其他“插件”中找到它。污染全局范围通常不是一个好主意,但是对于必须在所有站点上工作的插件,确保它不会意外覆盖站点创建者正在使用的变量尤为重要。当然还有其他用途。例如,它可用于“锚定”一个迭代变量,

javascript - onClick 函数 "this"返回窗口对象

我的JavaScript应用程序遇到了令人头疼的问题。如果我这样写一个元素:我得到“LI”。但是如果我这样做:“foo()”在哪里:functionfoo(){alert(this.tagName);}我得到“未定义”。我不知道“this”在附加功能方面应该如何工作。但是,我感到困惑,因为“this”没有选择元素,但显然默认为“window”。我不明白为什么会这样。谁有解释吗? 最佳答案 那是因为您没有在JavaScript函数调用中传递对this的引用。JavaScript函数中的this与onClick示例中引用的对象不同。试试

javascript - "this.el"在 $ ('ul' , this.el 中的含义)

我刚刚学习了一些主干教程,我有一个一般的jQuery问题,我实际上已经想知道了一段时间。有时我会在jQuery选择器中看到带有第二个参数的调用,例如$('ul',this.el)。选择器中第二个参数的用途是什么?我并不是说在任何Backbone示例的上下文中,只是一般来说,在选择器中传递第二个参数的目的是什么,为什么它总是传递到那里的对象?我找不到关于此的任何文档。 最佳答案 含义等同于:$(this.el).find('ul')在内部,经过一系列测试后,jQuery发现它需要将它翻转到上面的.find()调用,它这样做了,然后重新

javascript - (function(){/*.....*/})(); 和有什么区别?和(函数($){/*.....*/})(jQuery);

有区别吗:(function(){/*..........*/})();和:(function($){/*..........*/})(jQuery); 最佳答案 其他人解释了区别是什么,但没有解释为什么您使用后者。$变量最常被jQuery使用。如果您有一个加载jQuery的脚本标记和另一个加载您的代码的脚本标记,那就完全没问题了。现在将prototype.js加入其中。如果你加载prototype.js然后加载jQuery,$仍然是jQuery。反过来做,现在$是prototype.js。如果您尝试在这样的页面上使用$,您可能会遇

javascript - 如何删除在 TypeScript 中使用 "this"的事件监听器?

在JavaScript中,对于需要访问私有(private)成员和函数的事件处理程序,我可以依赖那些在我的事件处理程序函数中可访问的函数范围,并执行如下操作:theElement.addEventListener("click",onClick);及以后:theElement.removeEventListener("click",onClick);在TypeScript中,我需要使用匿名函数让this成为包含对象,如下所示:theElement.addEventListener("click",(event)=>this.onClick(event));在这种情况下,我无法从监听事件

javascript - $(this).attr ("id") 不工作

正如标题所说,当我尝试获取元素的id属性时,我总是得到“undefined”,基本上我想做的是在值为“other”时用输入框替换元素。代码如下:functionshowHideOther(obj){varsel=obj.options[obj.selectedIndex].value;varID=$(this).attr("id");alert(ID);if(sel=='other'){$(this).html("");}else{$(this).css({'display':'none'});}}HTML:Race:SelectoneonetwothreeOther这可能是我没有注意