草庐IT

shared_from_this

全部标签

javascript - Mocha 和 this 上下文

所以我有这段代码:describe('maindescribe',function(){afterEach(function(){//this.prop===undefined});describe('sub',function(){it('shoulddosomething',function(){this.prop='test';});});});我不知道为什么mainafterEach中的this.prop是undefined因为下面的代码按预期工作:describe('maindescribe',function(){afterEach(function(){//this.pr

javascript - 'this'关键字,不清楚

我对以下代码中的“this”关键字感到困惑,有两个“this”:varFoo=function(string){this.name=string//1st-this}Foo.prototype.get_name=function(){returnthis.name//2nd-this}varmyFoo=newFoo('John')the_name=myFoo.get_name()'the_name'等于'John',原型(prototype)方法通过返回this.name得到名字。但是谁能给我解释一下1st-this和2nd-this,它们代表什么? 最佳答

javascript - 如何在 Javascript 中重新定义 `this`?

我有一个函数,它是一个JQuery事件处理程序。因为它是一个JQuery事件处理程序,所以它使用this变量来引用调用它的对象(对于该库来说是正常的)。不幸的是,此时我需要手动调用该方法。如何使被调用函数中的this表现得就像从JQuery中调用一样?示例代码:functionperformAjaxRequest(){//FunctionwhichbuildsAJAXrequestintermsof"this"}functionbuildForm(dialogOfForm){varinputItem;dialogOfForm.html('...');dialogOfForm.dialo

javascript - 在 setTimeout() 中使用 $(this);

我想在jQuery中动态设置超时。动态设置超时函数需要使用$("this"),但我似乎无法让它工作。一个例子:$("div").each(function(){varcontent=$(this).attr('data-content')setTimeout("$(this).html('"+content+"')",$(this).attr('data-delay'));});​http://jsfiddle.net/qmhmQ/执行此操作的最佳方法是什么? 最佳答案 $("div").each(function(){varcon

javascript - 在外部函数中使用 $(this)

我是JavaScript的新手,我想知道为什么它对我不起作用:functionresetColor(){$(this).css({"color":"red"})}$('.class').click(function(){resetColor();});我还尝试在单击.class时将$(this)保存为变量,但这对我也不起作用。 最佳答案 一种更简单的方法是引用函数而不是将其包装在匿名函数中,如下所示:$('.class').click(resetColor); 关于javascript-

javascript - 使用 Facebook ://To Share a Post through the Facebook App with Web Interface

我的一个网站有一个我编写的自定义共享插件,如果可能的话,我想尝试在本地Facebook应用程序中打开“共享”功能。我知道您可以使用fb://打开应用程序,但根据我的阅读,这是FBML的一部分,已被弃用多年。我最理想的是让链接打开FB应用程序,并在共享框中预先填充一个链接,然后用户可以自动共享该链接。基本上是sharer.php脚本的功能(如果它从OG标签中提取数据就没问题)。我知道它可以在iOS应用程序(可能还有Android)中完成,但是否可以通过网络界面完成?我使用的链接仅通过一些Javascript在移动设备上显示,因此我不必担心它会在整个网站范围内造成任何问题。感谢您的帮助!

javascript - 位置 :sticky : Adding style when the element detaches from normal flow

举个简单的例子:MYNAVBAR和基本样式:#mynav{position:sticky;}我想将以下样式信息应用到我的导航栏仅当它脱离正常流程时,以便从视觉上将其与主要内容分开(在这种情况下带有阴影)box-shadow:0px10px15px0pxrgba(0,0,0,0.75);我可以使用某种伪类或类似媒体查询的东西吗?例如:#mynav:some-pseudo-class{box-shadow:0px10px15px0pxrgba(0,0,0,0.75);}我知道有一些很好的插件,但如果不绕过(相当新的)native功能position:sticky,它们似乎都无法实现它。相反

javascript - Angular 2 : How do I get params of a route from outside of a router-outlet

与Angular2Getrouterparamsoutsideofrouter-outlet类似的问题但针对的是Angular2的发布版本(因此是路由器的3.0.0版)。我有一个带有联系人列表和路由器socket的应用程序,用于显示或编辑所选联系人。我想确保在任何时候(包括页面加载时)都选择了正确的联系人,所以我希望能够在路线更改时从route读取“id”参数。我可以通过订阅路由器的事件属性来处理路由事件,但是事件对象只允许我访问原始url,而不是它的解析版本。我可以使用路由器的parseUrl方法解析它,但是这种格式不是特别有用,而且相当脆弱,所以我宁愿不使用它。我还在路由事件中查看

javascript - 如果 "this"为空字符串,则 Handlebars 中的 {{#each this}} 不起作用

考虑我的json是这样的:{main:{"":[{some_obj},{some_obj}]},secondary:{"key":[{some_obj},{some_obj}]}}现在我的第一个#each将运行在主要和次要的地方。{{#eachthis}}--Thisisformainandsecondary--{{#eachthis}}--Thisisfor""incaseofmainand"key"incaseofsecondary--{{/each}}{{/each}}如果“this”为空,如我的“main”属性的json中所示,我的嵌套#each将不起作用

javascript - 访问 promise 回调中对象的 'this'(然后)

我想用Javascript创建一个对象。其中一个方法应该执行一个promise链。链中的每个方法都必须访问作为对象成员的配置变量。问题是,this运算符在PromiseMethod2中被更改,我无法访问配置变量(它在PromiseMethod1中正常工作)。这是我的代码:varSomeObject(config){varthat=this;that.config=config;}SomeObject.prototype.SomeMethod=function(){varthat=this;that.PromiseMethod1().then(that.PromiseMethod2).c