草庐IT

swift - 覆盖 didSet

全部标签

javascript - 覆盖 JavaScript 对象和函数的危险

JavaScript的本质允许其原生对象被完全重写。我想知道这样做是否真的有危险!这里有一些原生JavaScript对象的例子ObjectFunctionNumberStringBooleanMathRegExpArray假设我想对这些进行建模以遵循您可能在Java(和其他一些OOP语言)中找到的类似模式,以便Object定义一组基本功能,并且每个其他对象继承它(这将有由用户明确定义,与Java不同,Java中一切都自然地派生自对象)示例:Object=null;functionObject(){Object.prototype.equals=function(other){retur

javascript - JS模块模式覆盖函数

我有以下模式BASE=function(){varthat={};varnumber=10;that.showNumber=function(){that.alertNumber();}that.alertNumber=function(){alert(number);};returnthat;};CHILD=function(){varthat=Object.create(BASE());varsecondNumber=20;//Overridebasefunctionthat.alertNumber=function(){alert(secondNumber);};returnth

javascript - 覆盖继承的原型(prototype)方法并在新方法中调用原始方法

在下面的代码中,如何访问B.prototype.log中的A.prototype.log?functionA(){}A.prototype.log=function(){console.log("A");};functionB(){}B.prototype=Object.create(A.prototype);B.prototype.constructor=B;B.prototype.log=function(){//callA.prototype.loghereconsole.log("B");};varb=newB();b.log();我知道我可以只写A.prototype.log

javascript - 如何删除 Ammap map 控件覆盖?

如何在显示我的AmMap时删除平移和缩放控件?创建map对象时是否可以更改某个字段,或者我是否必须手动更改库代码? 最佳答案 您可以在创建map时使用zoomControl字段禁用平移/缩放按钮:mapObj=newAmCharts.AmMap()mapObj.zoomControl={zoomControlEnabled:false,panControlEnabled:false}; 关于javascript-如何删除Ammapmap控件覆盖?,我们在StackOverflow上找到一

javascript - 在 es6 中覆盖库函数

我正在尝试覆盖库中的特定函数。就我而言,我试图覆盖Framework7上的一些功能.该库只有一个名为Framework7的类,在非ES6javascript中,创建应用程序实例如下所示:varapp=newFramework7();所以我假设它是可扩展的,所以这里是我的代码来扩展它:exportclassApplicationextendsFramework7{constructor(options){super(options);}}代码运行良好,但是,当我尝试重写其中一个函数时,比方说showPreloader,函数本身从未被调用exportclassApplicationexte

javascript - 在用户脚本中覆盖 Chrome 键盘快捷键

我写了一个userscript当按下CTRL+SHIFT+B时,对文本区域中的选定文本执行特定操作。这是通过为文本区域注册一个keypress事件然后检查按下的键来完成的。为了防止浏览器处理组合键,我使用了preventDefault()方法,该方法在Firefox中运行良好(Library窗口未打开,但执行了我的代码).但是,在Chrome中,该组合键会打开书签栏并且甚至不会触发keypress事件。我想知道是否有办法在Chrome中创建这样的快捷方式。它需要使用用户脚本-真正的扩展不是一个选项,因为我不想为Firefox和Chrome维护两个不同的“版本”。

javascript - 覆盖/重写一个javascript库函数

我正在使用开源javascript库timeline.verite.co这是一个时间轴库,在页面加载时效果很好。但是当我尝试在特定条件下重新绘制时间线时,它开始发出奇怪的错误我想修改库中的初始化函数。但是我不想在原始库本身中更改它,而是想在另一个单独的.js文件中重写/覆盖此函数,以便在调用此函数时,它必须使用我修改后的函数,而不是转到原始函数。我不确定是否使用原型(prototype)/继承以及如何使用它来解决这个问题? 最佳答案 你只需要为它分配新的值。这是一个例子:obj={myFunction:function(){aler

javascript - Safari 保存的密码覆盖表单中的自动完成 ="off"

我已经对这个问题进行了大量研究,但我似乎找不到任何可以解决我的问题的方法。我在我的表单标签和所有输入标签上设置了autocomplete="off",但Safari继续在页面加载时将自动保存的密码输入到我的表单中,这导致表单上出现意外的keydown事件在我的JavaScript中。有什么想法吗?我尝试了各种技巧,例如完全从代码中删除这些输入字段,然后在几秒钟后使用javascript和setTimeout将它们插入页面,但即使在那之后Safari仍然将其保存的密码扔到我的输入中.我还尝试在我的和标签中使用autocorrect="off"和autocapitalize="off"属性

javascript - 原型(prototype)上的属性会覆盖实际对象的属性吗?

我有一个Person构造函数,方法是sayHellovarPerson=function(firstName,lastName){this.lastName=lastName;this.sayHello=function(){return"Hithere"+firstName;}};然后我在Person的原型(prototype)上定义了一个不同版本的sayHello方法:Object.defineProperties(Person.prototype,{sayHello:{value:function(){return'Hithere';},enumerable:true}});现在

javascript - 是否可以拦截/覆盖页面中的所有点击事件?

我编写了一个应该在移动设备上运行的html5应用程序。90%的时间它工作正常,但在某些设备(主要是android4.0+)中,点击事件会触发两次。我知道为什么会这样,我正在使用iScroll4模拟native滚动并处理滚动内部发生的事件。(如果您感兴趣,第533行会调度事件)大多数情况下它工作正常但在某些设备中,iScroll调度事件和原始onClick事件都附加到元素被触发,所以点击发生了两次。我找不到在哪些设备上发生这种情况的模式,因此我正在寻找防止双击的替代方法。我已经想出了一个解决问题的丑陋修复程序。我将所有点击都封装在一个“handleClick”方法中,该方法的运行时间不得