草庐IT

cross-browser

全部标签

javascript - 主要浏览器中是否仍然存在 ECMAScript 3 实现差异?

有人可以指出当今浏览器中ECMAScript第三版的实现差异吗?(Chrome、Safari、IE8、FF)我们在使用ECMAScript3标准(而不是FF和IE对JScript和JavaScript的扩展)时安全吗? 最佳答案 嗯,当然有实现错误,我不得不处理的最严重的是JScript,标准的Microsoft实现,例如:FunctionExpressions的标识符应该只能在函数本身的内部范围内访问:(functionfoo(){alert(typeoffoo);//"function"})();alert(typeoffoo)

javascript - 是否定义了跨操作系统 sleep /暂停的 setTimeout 行为?

我设置了一个setTimeout,例如10秒,在这10秒内,我暂停/休眠PC。醒来时,以下哪项是正确的:-保证触发超时保证不会触发超时超时可能会或可能不会触发。它是特定于浏览器的关于循环setInterval的相同问题。是否保证(不)继续。 最佳答案 简答题它被定义为在规范中执行。超时请求将进入各种队列并进行轮询,直到它被触发。如果系统在恢复时休眠,它将从停止的地方开始并恢复轮询。长答案可能比任何人想知道的都多最近的(2014年10月28日)working-draftoftheTimer'sSpec在w3编写的答案时,它会触发...

javascript - 检测 console/devtools 是否在所有浏览器中打开

我正在尝试创建一个脚本,该脚本将在打开或关闭任何浏览器控制台时运行。有什么方法可以通过JavaScript、jQuery或任何其他客户端脚本检测所有浏览器(Firefox/IE/Chrome/Safari/Opera)中的浏览器控制台是否打开? 最佳答案 如果您愿意为用户接受干扰,你可以使用thedebuggerstatement,因为它在所有主流浏览器中都可用。旁注:如果您应用的用户对控制台的使用感兴趣,他们可能熟悉开发工具,并且不会对其出现感到惊讶。简而言之,该语句充当断点,只有在浏览器的开发工具打开时才会影响UI。这是一个示例

javascript - 如何判断是 "html"还是 "body"滚动窗口

下面的代码用于通过javascript查找可以滚动的元素(body或html)。varscrollElement=(function(tags){varel,$el,init;//iteratethroughthetags...while(el=tags.pop()){$el=$(el);//ifthescrollTopvalueisalready>0thenthiselementwillworkif($el.scrollTop()>0){return$el;}//ifscrollTopis0trytoscroll.elseif($el.scrollTop(1).scrollTop()

javascript - offset() jquery 函数的跨浏览器问题

我在使用jQuery中的offset()函数时遇到跨浏览器问题。例如,我正在寻找anchor标记的偏移量例如。$('#anchorid').offset().top在Firefox3.6=205在IE8=204中在IE7中=553如您所见,每个返回值的差异。我不太关心FF和IE8之间的区别,但我更关心IE7和其他版本。我是否可以使用其他功能来实现相同或相似的跨浏览器或可能的修复? 最佳答案 很可能您的标记有问题(非跨浏览器)。但作为替代方案,您可以尝试使用nativejavascript。document.getElementByI

javascript - 跨浏览器兼容的 CustomEvent

我需要创建一个自定义事件,它将一些数据传递给事件监听器。我已经创建了一个像下面这样的自定义事件varevent=newCustomEvent('store',{'detail':obj});document.getElementById("Widget").dispatchEvent(event);监听器document.getElementById("Widget").addEventListener('store',function(e){console.log(e.detail);document.getElementById("result").innerHTML=e.deta

javascript - 恢复覆盖的 window.JSON 对象

一些我无法控制的代码在不检查它是否已经实现的情况下覆盖了全局JSON对象:varJSON={org:"http://www.JSON.org",copyright:"(c)2005JSON.org",license:"http://www.crockford.com/JSON/license.html",stringify:function(a,g){...问题是这个版本的JSON解析器非常旧并且有一个错误,这破坏了我的序列化尝试。(其他人对此实现有一个similarproblem。)我可以获取浏览器的native实现吗?我以为deletewouldwork,但事实并非如此。我怀疑这是

javascript - window.onload 在 Firefox+Greasemonkey 脚本中有效,但在 Chrome 用户脚本中无效?

有一个页面http://example.com/1.php像往常一样包含javascript文件:此文件包含名为exampleFunction的函数,我需要在我的用户脚本中使用它。我还有一个用户脚本://==UserScript==//@nameSomeName//@namespacehttp://example.com/userscripts//@descriptionGreetstheworld//@includehttp://example.com/*//==/UserScript==window.onload=function(){console.log(exampleFunc

带有跨浏览器换行符的 Javascript 预格式化文本

我有带有换行符和多空格的预格式化字符串,我想将它们附加到文本节点中。varstring="Preformatted"+"\n"//\r,\r\n,\n\rorwhatelse?+"multispacestring";vartext=document.createTextNode(string);document.getElementById('bar').appendChild(text);我尝试采用作为断行符:\n在所有浏览器中换行,但在IE中(我在7上测试)变成一个空格\r仅在IE中换行\r\n适用于所有浏览器,但在IE中,第二行开头的空格很恐怖\n\r总的来说还可以,但是在IE中

javascript - 使用 image.complete 查找图像是否缓存在 chrome 上?

我一直在尝试找出是否使用js将外部图像缓存在浏览器上,这是我目前拥有的代码:functioncached(url){$("#imgx").attr({"src":url});if(document.getElementById("imgx").complete){returntrue;}else{if(document.getElementById("imgx").width>0)returntrue;}returnfalse;}$(document).ready(function(){alert(cached("http://www.google.com/images/srpr/na