草庐IT

IE兼容处理

全部标签

javascript - 改变 firebugx.js 以适应 IE 开发者工具

firebugx.js文件(如下所示)同时检查!window.console和!console.firebug,它可以正确检测是否安装了firebug。但是,该检查不适应IE开发人员工具中的native控制台对象——它会覆盖IE控制台对象。例如,如果我包含firebugx.js代码,那么以下异常将不会出现在IE控制台中(它会被吞掉):functionfoo(){try{throw"exception!!!";}catch(e){console.error(e);}}问题:容纳IE开发人员调试器的最佳方法是什么?也许显而易见的答案是在IE中调试时简单地注释掉firebugx.js检查。还

javascript - 将处理程序附加到窗口滚动事件

关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭1年前。ImprovethisquestionJohnResig建议使用setInterval()以减少调用处理程序的次数-参见http://ejohn.org/blog/learning-from-twitter/John在博文中的解决方案:varouterPane=$details.find(".details-pane-outer"),didScroll=false;$(window).scroll(function(){did

javascript - 异步加载的 Cufon 不会在 IE 中呈现

我正在创建一个使用Cufon的网站,由于大量的Javascript,页面重量特别重。因此,我正在尝试使用head.js(http://headjs.com/)异步加载脚本,如下所示:head.js("http://ajax.microsoft.com/ajax/jquery/jquery-1.4.2.min.js",function(){head.js("/js/libs/cufon-yui.js",function(){head.js("/js/shared/Stag_Bold_700.font.js",function(){Cufon.replace('h1',{fontFamil

javascript - 如何使用特征检测来了解浏览器是否支持 border-radius? (包括IE9)

我见过很多使用以下方法检测对边界半径的支持的示例:varcssAttributeNames=['BorderRadius','MozBorderRadius','WebkitBorderRadius','OBorderRadius','KhtmlBorderRadius'];for(vari=0;i但这似乎不适用于支持border-radius的IE9。我错过了什么吗? 最佳答案 知道了-检测数组需要添加“borderRadius”-它区分大小写。 关于javascript-如何使用特征

javascript - 为什么 IE8 错误地提示加载了非安全元素?

我管理一个在SSL下运行的电子商务网站。问题发生在我网站的购物车的最后一页,该页面在SSL下加载。问题是InternetExplorer8.0(包括版本8.0.6001.18702和其他版本的IE8,但据报道不是所有版本的IE8)至少提示一个不安全的元素加载,这吓跑了一些我的潜在客户。IE8在页面明显完全加载后(似乎没有丢失图像)显示一个对话框,上面写着:"SecurityWarning:Doyouwanttoviewonlythewebpagecontentthatwasdeliveredsecurely?Thiswebpagecontainscontentthatwillnotbe

javascript - IE8 上的 jquery(null 为 null 或不是对象)错误

当我加载jquery时使用:它适用于IE9、firefox、chrome、safari,但不适用于IE8。我尝试了开发者/调试器工具,但仍然不明白为什么这是个问题。这是jquery应该有错误的字符代码:32039。在那条线上有这样的功能:G=function(a){varb=F.exec(a);b&&(b[1]=(b[1]||"").toLowerCase(),b[3]=b[3]&&newRegExp("(?:^|\\s)"+b[3]+"(?:\\s|$)"));returnb}有人也遇到过这个问题吗?站点是http://www.kanersan.com我不会在加载jquery之前调用

javascript - 如何对球体的不规则平面进行纹理处理?

我想为THREE.js球体的每个面赋予它自己的纹理。所以我让SphereGeometry计算顶点并使用面的顶点将每个面转换为PlaneGeometry。THREE.SpherePlaneGeometry=function(v1,v2,v3,v4){THREE.Geometry.call(this);varnormal=newTHREE.Vector3(0,1,0);this.vertices.push(v1.clone());this.vertices.push(v2.clone());this.vertices.push(v3.clone());this.vertices.push(

事件处理程序中的 JavaScript 同步和关键部分

我有一个函数,它是websocket.onmessage的事件处理程序,现在由于服务器可以发送多条消息(一条接一条)并且每条消息都会触发该事件,并且由于函数block可能需要几秒钟(内部进行了大量渲染),可能会在第一个函数调用仍在运行时再次调用该函数。在某些情况下,我需要在此函数中使用关键block,以便第二次调用只会在第一次调用结束时启动关键部分,这被认为是在JavaScript中实现锁的“最佳实践”? 最佳答案 由于js是单线程的,所以不能真正做锁。好吧,你可以但你不应该。一个想法可能是保留状态变量。您的函数将在每个onmess

javascript - 在 Node.js 中管道/流式处理 JavaScript 对象

我正在努力研究Node.js流,并不是说我对JavaScript和Node很陌生,我真正掌握的最后一种语言是Perl和PHP:-D我读过Buffer/Streams文档@nodejs.org,看过JamesHalliday@LXJS,阅读他的流手册和ThorstenLorenzevent-streampost.我开始了解基础知识:)我处理在RDF中序列化的数据(既不是JSON也不是XML)。我设法获取数据(通过请求在真实代码中)并使用rdfstore将其解析为JS对象模块。到目前为止,我是这样做的:s.createReadStream('myRDFdata.ttl').pipe(ser

javascript - 检查 IE 的快速伪真方法?

我读了一篇关于的文章TestforInternetExplorerinJavaScript表示快速测试是:varisMSIE=/*@cc_on!@*/0;if(isMSIE){//doIE-specificthings}else{//dononIE-specificthings}但其中一个comments展示了另一种方式:(我不得不说,它有效)if(-[1,]){//dononIE-specificthings}else{//doIE-specificthings}所以我问:-[1,]有什么特别之处以至于IE无法识别而其他人可以识别它?附:找到另一个快速伪真技巧IE='\v'=='v'