草庐IT

javascript - 在运行任何其他 JavaScript 之前在 UIWebView 中运行 JavaScript

我有一个UIWebView组件,它将加载一个可能包含JavaScript的网页。我想在加载的网页上运行任何JavaScript之前运行我自己的一些JavaScript。我知道我可以使用[myWebViewstringByEvaulatingJavaScriptFromString:]在webViewDidFinishLoad:上UIWebView代表,但是这只会在网页上的JavaScript运行后运行我的JavaScript。将我的JavaScript注入(inject)网页的源代码是唯一的解决方案吗?例如,我会把它紧跟在之后标记以确保它是第一个运行的JavaScript。

javascript - 如何在动画完成之前禁用滚动?

我正在使用这段代码滚动到我页面上的某个元素:$("html,body").animate({scrollTop:$(".myDiv").offset().top},300);它有效,但存在一个问题:当用户向下滚动而脚本向上滚动时,会出现一些抖动,因为同时有两个滚动命令在不同的方向-对我来说这听起来很合乎逻辑。我检查了其他一些具有这种滚动功能的网站,没有抖动。那么有什么技巧可以防止这种情况发生呢? 最佳答案 当你使用带滚动的动画时,这是一个jQuery错误,很好的检测。我研究了如何关闭滚动并找到了这个问题:Howtodisablesc

javascript - Jasmine 2.0 如何在运行期望之前等待实时

我正在尝试测试postMessageAPI,因为在接收消息之前有轻微的延迟,我无法在发送消息后立即运行预期。在jasmine1.3中,我曾经在运行期望之前等待()几毫秒并且工作正常。然而,Jasmine2.0wait()已被弃用,现在看来setTimeout中的所有内容都不会运行,除非调用done()..不确定这一切是否都有意义,如果是的话,我希望得到一些关于如何解决这个问题的建议。谢谢! 最佳答案 这对我有用:beforeAll(function(done){setTimeout(done,5000);});beforeAll函数

javascript - 如何在提交表单之前删除 AutoNumeric 格式?

我正在使用jQuery插件AutoNumeric但是当我提交表单时,我无法删除POST之前字段的格式。我尝试使用$('input').autonumeric('destroy')(和其他方法),但它会在文本字段上保留格式。如何POST未格式化的数据到服务器?如何删除格式?初始配置或其他地方是否有它的属性?我不想将序列化的表单数据发送到服务器(使用AJAX)。我想提交带有未格式化数据的表单,就像正常的HTML操作一样。 最佳答案 我在jQuery中为此编写了一个更好的、更通用的hack$('form').submit(function

javascript - 您可以绑定(bind) .click() 以便它在 onclick 之前触发吗?

我正在为在JSF中构建的应用程序编写jQuery。JSF组件使用大量它们自己的JS来完成JSF所做的一切,并且它们使用大量的onclick属性来处理这一切。是否有有效/正确的方法将您自己的点击事件绑定(bind)到元素并确保您的事件在默认的onclick事件之前触发?似乎默认情况下,在任何内联onclick函数调用之后都会触发jQueryclick函数。 最佳答案 在jQuery中,事件严格按照注册顺序触发。您可以通过遍历整个DOM,删除那些onclick属性,然后注册您自己的处理程序来绕过任何内联DOM0onclick样式处理程序

javascript - 使用 webkitdirectory 上传目录,是否可以在上传之前过滤掉某些文件?

我正在使用webkitdirectory创建一个允许上传整个文件夹(而不是选择单个文件)的输入。我知道它是非标准的,不应在生产中使用。我正在上传一种特定类型的文件夹,其中有一个不需要的非常大的文件,以及许多其他小文件。上传需要很长时间,因为有一个大文件,但巧合的是,这也是我在服务器端实际上不需要的一个文件,我想知道是否有任何方法可以在上传之前将其过滤掉? 最佳答案 我们是否应该假设大文件与您想要的文件具有相同的名称模式和/或内容类型?否则应该可以使用accept将其排除在选择之外。属性。否则我会看到2种替代方法:在提交时处理文件列表

javascript - $(document).ready 之前的事件

我有一个功能可以在加载文档之前有条件地隐藏控件。如果我将此功能放在$(document).ready上,我会看到页面闪烁以有条件地隐藏控件。我想知道在$(document).ready被触发之前是否有可以调用的事件。 最佳答案 正如其他人提到的那样做myhiddendivtag.hidden{display:none;}在document.ready中,你可以显示,这相当于onload,等待html加载完毕$(document).ready(function(){$('#test').show();});此处为jsfiddle示例h

javascript - 为捕获阶段注册的事件监听器在冒泡之前未触发 - 为什么?

我试图了解是什么决定了单击嵌套的时触发事件处理程序的顺序-我所看到的似乎与记录在案的行为不一致,所以我正在寻找一些帮助来理解它。我有2个嵌套的div,每个都有2个事件处理程序,一个用于捕获阶段,一个用于冒泡阶段:functionsetup(){varouter=document.getElementById('outer');outer.addEventListener('click',function(){console.log('outerfalse');},false);outer.addEventListener('click',function(){console.log('

javascript - XHR 进度事件在上传完成之前不会触发?

我正在使用以下$.ajax命令从PhoneGap应用程序上传文件:functionupdateProgress(evt){if(evt.lengthComputable){varpercentComplete=evt.loaded/evt.total*100;console.log(percentComplete+"%");}}$.ajax({url:url,type:"POST",data:data,cache:false,dataType:"json",processData:false,contentType:false,success:successCallback,error

javascript - 如何确保 D3 在 javascript 运行之前完成加载多个 CSV?

我正在使用D3将其他CSV文件列表的CSV加载到javascript中。当我运行以下代码时,employees数组在代码中到达它时仍然是空的。有没有正确的方法来确保D3在javascript继续之前完成加载数据?varemployees=[];//Retrievethefilelistofallthecsvsinthedatadirectory,thenrunacallbackonthemfunctionretrieveList(url,callback){d3.csv(url,function(data){callback(data);})}//Parseafilelist,andt