草庐IT

javascript - TypeScript 在 Namespace 下扩展 JQuery

我正在尝试通过TypeScript中的函数扩展默认的JQuery接口(interface)和默认对象jQuery代码///namespaceMyNameSpace{var$=jQuery;exportinterfaceJQuery{test(options:Object):JQuery;}$.fn.test=function(options:Object):JQuery{if(this.length===0){console.log('Error!');returnthis;}console.log(options);returnthis;}exportvartestBody=func

javascript - Javascript promise 中的错误处理

我有一些Javascript代码通过一些同步后处理来做一些异步的事情,然后再做一些异步的事情(XHR->解析XHR->基于第一个的新XHR)。我没有完成错误处理:/*API*/functiongetFile(name){return$.ajax({url:name+".json"}).then(function(data){returndata.id},handleError)}functionhandleError(errorObj){if(errorObj.status){returnerrorObj.status}else{returnerrorObj}}functionmyAp

javascript - 调整 keyup 事件以在用户完成输入后调用 API

我有一个包含jQueryonKeyup事件的邮政编码字段-这个想法是,一旦他们完全输入了他们的邮政编码,就可以调用GoogleMapsGeocodingAPI,根据这个邮政编码立即获取位置。此代码有效,但我想找到一种理想情况下不会多次调用API而是等待并查看用户是否已使用某种等待x时间然后调用API的方法完成键入的解决方案。谁能建议最好的方法?$("#txtPostcode").keyup(function(){varpostcode=$('#txtPostcode').val().lengthif(postcode.length>=5&&postcode.length

javascript - 有什么方法可以防止在 MVC 5 中提交表单?

我有一个来自。@using(Html.BeginForm()){//FromcontentSave}一切正常。我有一个不合时宜的dropdwon。我想检查一下,如果选择了下拉值,则可以提交表单,否则不会提交。简而言之,下拉选择是必需的,而且是表格外的。我可以使用jquery或javascript检查是否选择了dropdwon天气的值。我的问题是,如果未选择值,我如何阻止提交表单? 最佳答案 使用jQuery很简单:$("#your-form-id").submit(function(e){//notethatit'sbetterto

Javascript:字符串与对象

这个问题在这里已经有了答案:Whydoes("foo"===newString("foo"))evaluatetofalseinJavaScript?(5个答案)关闭6年前。我查看了stackoverflow上的所有问题和答案,但找不到简单的答案。字符串和对象到底有什么区别?例如,如果我有这段代码:vara='Tim';varb=newString('Tim');到底有什么区别?我知道new会使代码复杂化,而newString会减慢速度。此外,我理解a==b是true,但更严格地说a===b是false。为什么?我似乎无法理解对象和字符串创建背后的过程。例如:vara=newStrin

javascript - 如何从 Javascript 或 Jquery 中的数组中选择随机值?

这个问题在这里已经有了答案:Howtogetuniquerandomitemsfromanarray?(1个回答)关闭6年前。我正在尝试显示数组中的3个随机值。以下脚本仅从javaScript数组返回单个项目。vararrayNum=['One','two','three','four','five','six','seven','eight','nine'];varsingleRandom=arrayNum[Math.floor(Math.random()*arrayNum.length)];alert(singleRandom);但我想显示数组arrayNum中的三个随机值,任何人

javascript - 视频加载后的 jQuery 加载函数

我有这样的HTML代码:......我使用了这个JS代码:$(document).ready(function(){"usestrict";$("#abc").load(function(){console.log(3);});});我想在视频加载时运行该函数。JS代码适用于img标签,但不适用于video标签。我希望它像img标签一样工作。就像我不希望它在从缓存中加载视频时运行一样。我该怎么做? 最佳答案 HTML元素video没有load事件。它还有其他的,例如loadstart、loadeddata或loadedmetadat

javascript - 我如何推迟像 jquery Deferred 这样的 ES6 promise?

1。使用es6promise,但语法不正确。我正在使用es6,并且想做一个延迟的确认对话框://First,createanemptypromise:letpromise=newPromise((resolve,reject)=>{})//Then,showthedialog:let$dialog=$('#dialog-confirm').show();//FAIL:Iwanttotriggerthepromiseresolver,butfailed.$dialog.find('.btn-yes').click(()=>{promise.resolve();})$dialog.find

javascript - 如何防止默认右键单击包含图像的 Canvas

我有一个Canvas并在其中显示图像。我已将一个jquery事件附加到它,如下所示:$("#mycanvas").mousedown(function(e){//Dosomethinge.preventDefault();e.stopPropagation();});我希望此代码执行我的操作并阻止默认的浏览器行为。前者实现了,但是后者,即违约行为预防没有发生。该事件运行虽然。我想知道如何防止显示右键单击时可以在图像上看到的菜单: 最佳答案 您可以使用contextmenu:$("#mycanvas").contextmenu(fun

javascript - POST 方法在 npm http-server 上抛出错误 405

我正在尝试发出Ajax请求以在本地http服务器上运行php文件。我得到一个Error405:methodnotallowed在我的浏览器控制台中。我已经尝试了一些类似问题的答案,但无济于事。我正在使用npmhttp-server来托管它。我已经尝试在http服务器上启用CORS,但这并没有解决问题。我可以将我的问题缩小到以下代码(使用给定的答案here)。/test.html:ButtonClickMe$(document).ready(function(){$("button").click(function(){$.ajax({method:'POST',url:'echo.ph