草庐IT

javascript - XHR + 数据 URI 在 Safari 中不起作用

我使用XMLHttpRequest使用以下代码从数据URI生成Blob:functiondataUrlToBlob(dataUrl,callback){varxhr=newXMLHttpRequest;xhr.open('GET',dataUrl);xhr.responseType='arraybuffer';xhr.onload=function(e){callback(newBlob([this.response],{type:'image/png'}));};xhr.send();}用法:dataUrlToBlob('data:image/png;base64,iVBORw0KG

javascript - 谷歌地图脚本打破 Safari TypeError : Result of expression 'document.body' [null] is not an object

我在我的网页中显示谷歌地图,它在除Safari之外的所有浏览器中都能正常工作。Safri使页面变白并且JS错误显示:TypeError:Resultofexpression'document.body'[null]isnotanobject.maps.google.com/maps/api/js?sensor=true®ion=nz&async=2&callback=initializeConfigMap:11TypeError:Resultofexpression'a'[null]isnotanobject.maps.gstatic.com/intl/en_us/mapfile

javascript - 磁带形式的 slider 。 Safari 中的错误

我把slider做成胶带的形式。在Chrome和Mozilla中它看起来不错,但在Safari中它看起来很糟糕。也许有人可以帮助解决问题?!?提前致谢!jsfiddle.net/mcbgv/7/CSS:#wrapper1#my_scroll{z-index:5;height:480px;width:640px;position:absolute;top:-10px;left:12px;}#wrapper1#bloc_wrap{height:480px;width:640px;z-index:7;overflow:hidden;}#wrapper1#wrapper_sl{height:4

javascript - 如何触发触摸事件?

让我们从一些事件监听器开始:window.addEventListener('scroll',function(e){console.log('scroll',e);});window.addEventListener('touchstart',function(e){console.log('touchstart',e);});window.addEventListener('touchmove',function(e){console.log('touchmove',e);});window.addEventListener('touchend',function(e){conso

javascript - reCAPTCHA 2.0 未出现在 Safari 中(适用于 Edge、Chrome 和 Firefox)

我刚刚集成了GooglereCAPTCHA2.0进入我的网站。它在Chrome、Firefox和Edge中按预期工作,但在我的MacBookPro上的Safari中无法工作/出现。MacBookPro:macOSSierra版本10.12.2。Safari:版本10.0.2(12602.3.12.0.1)reCAPTCHA正在dhtmlXForm中使用像这样……...{type:"label",name:"myrecaptcha",label:"",offsetLeft:320},...在除Safari之外的所有浏览器中都会生成此...但在Safari中它不会出现...控制台没有错误。

javascript - Safari 12 忽略 getUserMedia 约束

出于某种原因,Safari12(尚未在其他版本上尝试过)完全忽略了getUserMedia约束。我的代码看起来像这样navigator.mediaDevices.getUserMedia({video:{facingMode:'environment',width:{min:640,ideal:1280}},audio:true}).then(userStream)//SafarionMacignoresconstraintsandendsupexecutinghere.catch(fallback)//ChromeonMacraisesanderrorandendsupexecuti

javascript - 移动 WebKit 浏览器 - setTimeout 和非事件页面

我有一个问题,关于移动WebKit浏览器(即移动Safari和Android浏览器)在页面变为非事件状态并再次重新激活时如何处理setTimeout函数。假设页面变为非事件状态(即手机屏幕进入“sleep”/我们打开另一个应用程序/我们打开另一个网页),并且setTimeout函数应该在页面再次变为事件状态之前激活。现在看来:MobileSafari会在页面激活后立即执行该功能安卓浏览器:可能会像往常一样执行函数(即即使页面处于非事件状态,JavaScript也会继续运行)可能会在页面激活后立即执行(类似于MobileSafari)可能根本不执行我想知道是否有人知道确切的“规则”?

javascript - 在 Safari 中为复杂对象调用 JSON.stringify 错误

如前所述,这种情况发生在Safari中,而在Chrome和Firefox中它工作正常。我想是因为转成json的对象有两个属性包含了一个moment对象。我将它们更改为日期对象并传递了stringify函数。奇怪的是,如果我尝试执行JSON.stringify(moment())它正在工作,所以我不确定如何调试它并找到问题所在。这是Safari中错误的屏幕截图:编辑:经过一些调试后,我注意到这个错误发生在dhtmlxwindowonclose事件之后。我在dhtmlx窗口中加载了一个部分View,并在其中创建了这个对象,该对象在关闭窗口之前被插入到父View中初始化的列表中。在我关闭窗口

javascript - Mobile Safari/Webkit 窗口焦点事件

我想知道当用户切换回“你的”页面窗口时是否有可能得到一个事件?当用户打开一个新标签然后切换回您页面的标签或当用户关闭safari然后再次打开时,可能会发生这种情况。我希望在收到此事件后能够更新页面上的内容。我现在正在使用setInterval来完成此操作,但是当用户关注您的窗口时最好不要有延迟。谢谢! 最佳答案 这个问题得到解决的可能性似乎很小:我创建了this脚本来记录尽可能多的WebKit事件(事件名称取自http://svn.webkit.org/repository/webkit/trunk/Source/WebCore/d

javascript - 在 Safari 上使用 remodal 和 pickadate 时出现严重的性能问题

我试图将remodal与pickadate一起使用,这样我就可以在模态中创建日期选择器和时间选择器。在第一次试验中,我发现日期选择器会被重装隐藏,如下所示。为了克服这个问题,我为我的reshape创建了一个.full-screen类。.remodal{&.full-screen{max-width:none;height:100%;width:100%;margin:0auto;}}然后它在Chrome中工作得很好,如图所示:然后我开始在我的iOS上测试该网站,我发现叠加层乱七八糟。我认为它粘在了事件输入元素的底部。如iOSSafari和iOSChrome中所示:通常我会在MacOSX