草庐IT

binding_of_caller

全部标签

javascript - 如何将现有的 DOM 元素绑定(bind)到 KnockoutJS viewModel

如果JS值发生更改,我将使用KnockoutJS更新DOM(Knockout为我们提供了此功能)。默认的KnockoutviewModel类似于以下block:Javascript:varviewModel={price:ko.observable(109)}HTML:现在,当价格发生变化时,Knockout会自动更新View。但我想要的是以下内容:varviewModel={price:ko.observable(jQuery("#price"))}99.00所以,我想将一个DOM元素绑定(bind)到我的viewModel。模型中的价格属性初始化为值99.00。当价格改变时(在Ja

javascript - jquery绑定(bind)点击和悬停,如何检查是否点击

我有这样的组合功能(简化版):$('label').bind('clickhover',function(){$('label').removeClass("active");$(this).addClass("active");});如何添加if来检查是否是点击? 最佳答案 使用event.type:$('label').bind('clickhover',function(event){if(event.type=='click'){//dostuff}$('label').removeClass("active");$(thi

JavaScript replace() 方法 : remove empty space just at the end and at the beginning of the string

这个问题在这里已经有了答案:关闭10年前。PossibleDuplicate:HowdoItrimastringinjavascript?通过在javascript中使用replace方法,我试图删除字符串开头和结尾之间的空白区域:这是我的代码:知道我应该如何获得结果吗?input->"firstsecond".replace(/[^\s|\s$]/g,'');//""output->"firstsecond"

javascript - 如何在 knockout 中从节点中删除绑定(bind)?

我发现理论上ko.cleanNode()应该在调用时从节点中删除绑定(bind),但在thisexample中好像不行。Javascript://Viewmodelvarvm={name:ko.observable("John")}//Nodetobeaddedvarnode=$("",{id:"testing",'data-bind':"text:name()"});//Firstadditiontobody$("body").append(node);//Applybindingsko.applyBindings(vm,$("#testing")[0]);//Removeko.cl

javascript - 隔离范围 "="绑定(bind)和点符号 AngularJS

如何在带点符号的独立作用域中使用嵌套属性创建双向绑定(bind)。我认为'myObject.data':"=data"会工作,但事实并非如此。我不想链接myObject对象中的所有内容。我知道我可以做一些观察,但'myObject.data'看起来更干净。.directive("myDirective",[function(){return{restrict:"E",scope:{'myObject.data':"=data"},link:function(scope,element,attrs){scope.myObject={data:"myValue"};}};}])

javascript - AngularJS 指令 $watch 双向绑定(bind)

我试图通过双向数据绑定(bind)属性('=')区分内部更改和外部更改。换句话说:如果更改是内部的(即范围变量在Controller或链接函数中更改),我不想$watch触发该值。这里有一些代码可以说明我的问题:HTMLJavascriptapp.directive('mydemo',function(){return{restrict:'E',scope:{value:"="},template:"ClicktochangevalueattributeValue:{{value}}",link:function(scope,elm){scope.$watch('value',func

javascript - 如何在 AngularJS 中绑定(bind)自定义事件?

我有一个自定义事件core-transitionend(实际上由Polymer触发),我可以使用document.addEventListener()设置事件处理程序.但在AngularJS中执行此操作的最佳做​​法是什么?或者,我可以在DOM中明确设置一个处理程序,即,但是如何在AngularJS中定义这个函数呢? 最佳答案 参见thisfiddle,我在这里创建了一个自定义指令,它将事件绑定(bind)到元素,angular.module('HelloApp',[]).directive('customDir',function

javascript - knockout : Invoking function of parent component from child component

问题:我正在尝试构建一个小部件仪表板。每个小部件的标题上都有一个删除按钮。单击此按钮时,相应的小部件必须消失。我是如何设计的:我有两个knockout组件。我的小部件列表:VO将有一个小部件对象的observableArray。我的小部件:VO将在小部件中显示详细信息。注意:为简单起见,我只用数字替换了小部件对象。ko.components.register('my-widget-list',{viewModel:function(params){varself=this;self.values=ko.observableArray([10,20,30,40,50]);self.del

javascript - 使用 Chutzpah 运行 QUnit (TypeScript) 测试给出 "Called start() outside of a test context while already started"

我有一个相当简单的重现,结果我不明白。确保安装了Chutpah测试适配器4.0.3。使用VisualStudio2013执行以下步骤:创建一个新的.NET4.5.1类库项目;添加NuGet包qunit.TypeScript.DefinitelyTyped0.1.7;将TypeScript文件file1.ts添加到项目中,内容如下:///QUnit.test("QUnitisworking",assert=>assert.ok(true));在该文件内右键单击并从上下文菜单中选择“运行JS测试”。我可以确认file1.js是按预期生成的。结果是没有运行任何测试,测试资源管理器没有显示测试

javascript - 单元测试时如何测试绑定(bind)函数是否相等?

我想测试传递给函数的参数是函数引用,但函数引用是使用bind()传递的。考虑要测试的代码(为简洁起见缩短):initialize:function(){this.register(this.handler.bind(this));}这个单元测试检查register()是否被handler()调用:it('registerhandler',function(){spyOn(bar,'register');bar.initialize();expect(bar.register.calls.argsFor(0)[0]).toEqual(bar.handler);});arg不等于我猜测的函