草庐IT

keyInfo信息的处理

全部标签

javascript - 有没有办法处理在 JavaScript 中调用的未定义函数?

如果我有如下函数:functioncatchUndefinedFunctionCall(name,arguments){alert(name+'isnotdefined');}然后我做了一些傻事,比如foo('bar');当foo未定义时,有什么方法可以调用我的catch函数,名称为“foo”,参数为包含“bar”的数组? 最佳答案 无论如何,MozillaJavascript1.5中都有(它是非标准的)。检查一下:varmyObj={foo:function(){alert('foo!');},__noSuchMethod__:f

javascript - 带有来自 GeoJSON 的附加信息的传单弹出窗口

我想将来自geojson的附加信息绑定(bind)到传单标记弹出窗口。我从传单文档中查找了一些内容,但它不起作用。varmap=L.map('map').setView([51.9,7.6],11);L.tileLayer('http://{s}.tile.cloudmade.com/5e4495ff4b0d454eb0443225198b7e6c/997/256/{z}/{x}/{y}.png',{maxZoom:16}).addTo(map);varpolygon={"type":"Feature","properties":{"name":"CityBoundingBox","s

javascript - Angular2指令修改点击处理

我正在尝试编写一个Angular2属性指令来修改某些元素的行为。更具体地说,我想将属性应用于具有点击处理程序的某些元素,并防止绑定(bind)函数在特定条件下执行。所以现在我有一个元素,例如:onClick是在托管按钮元素的组件上声明的一个函数,该组件执行某些操作。我想做的是写这样的东西:并有一个像这样的指令:@Directive({selector:'[online-only]',})exportclassOnlineOnlyDirective{@HostListener('click',['$event'])onClick(e){if(someCondition){e.preven

javascript - 将 typescript 与 RollUp bundle 在一起 - 无法处理编译器选项

我正在尝试bundle我的typescript文件RollUp(https://rollupjs.org/)我使用了这个配置文件:rollup.config.js:importaliasfrom'rollup-plugin-alias';importresolvefrom'rollup-plugin-node-resolve';importtypescriptfrom'rollup-plugin-typescript';importangularfrom'rollup-plugin-angular';exportdefault{entry:'../main.ts',format:'ii

javascript - 如何将 args 传递给事件处理程序?

如何将参数传递给事件处理函数?这在页面加载时运行函数,这不是预期的效果。我需要这个例程validateText来针对几个不同的文本框、下拉组合运行。我可以重用validateText而不是为每个文本/下拉组合创建一个吗?//addblureventhandlertothetextboxwithjQuerywhenthepageisfinishedloading$(document).ready(function(){$("#myTextbox").blur(validateText($("#myTextbox"),$("#Select1")));})functionvalidateTe

javascript - 在一段时间内禁用点击事件处理程序

我已经看过类似的问题,但提供的答案涉及按钮而不是div元素。当我单击带有idclick的div元素时,click事件处理程序被unbind()禁用并设置一个2秒的计时器。2秒后,单击事件处理程序应由bind()再次启用。问题是点击事件处理程序似乎没有得到“反弹”。我将文本附加到另一个div元素以检查单击事件处理程序是否处于事件状态。这是我的JSFiddle. 最佳答案 解决整个问题的另一种方法是不要为解除绑定(bind)和重新绑定(bind)而烦恼,只需使用“禁用”标志:$(document).ready(function(){va

javascript - 处理 Backbone 中不可保存的值

有没有标准的方法来处理Backbone中不可保存的值。例如MyModel=Backbone.extend(Backbone.Model,{initialize:function(){this.set({'inches':this.get('mm')/25});}})如果我在这个模型上调用save()它将抛出一个错误,因为没有与inches对应的数据库字段。我可以想出几种方法来解决这个问题,但我想知道是否有一种经过实践检验的方法通常最适合用于此问题?目前我的首选解决方案是扩展Backbone的toJSON方法并允许传递bool参数dontCleanup以允许它仍然返回所有模型的值(包括不

javascript - 在事件处理程序中使用它

我试图在DOM级别3事件规范中的事件处理函数中找到this关键字的含义。根据我的实验,this指的是event.currentTarget对象。标准中是否提到了这种行为?根据“JavaScript权威指南”一书,this指的是似乎错误的事件目标。event.currentTarget似乎更符合逻辑,因为事件处理程序作为HTML元素对象的方法被调用。有人可以澄清一下吗?IncaseofbubblingIsee"this"changesandmeanstheevent.currentTarget. 最佳答案 确实,权威指南在那种情况下是

javascript - 如何使用JavaScript SDK获取Facebook用户的好友信息

我正在使用FacebookJavaScriptSDK。我能够使用以下方法获取用户信息:FB.api('/me',function(response){....});我让用户的friend使用:FB.api('/me/friends',function(response){...});//..itonlyhastwovaluesnameandid.我想交friend出生日期和地点。是否有FB.api方法来获取它,或者我可以使用FB.Data.query获取它? 最佳答案 首先,您的应用需要有正确的permissions,friends

javascript - 为什么按键不处理删除键和退格键

我问这个不是因为我需要变通办法。我有一个工作正常,但我想知道为什么它不工作。这是Javascript中的错误(或JQuery,因为我使用的是JQuery.keypress处理程序)还是有特定的原因? 最佳答案 keypress事件设计用于处理用户键入的字符,而不是检测键盘事件,删除键和退格键不生成字符。一些浏览器稍微模糊了这条线,但一般原则是keyup和keydown事件在那里检测任何被按下的键并告诉你它是哪个键,同时keypress用于检测正在键入的实际字符。 关于javascript