当我尝试使用left: -webkit-calc(100% - 100px);(假设它left: 0;是初始状态)时,它在iOS 6.0.1中工作就好了.但是当我做同样的transition: left 1s linear;事情时,每次都会立即崩溃Safari.它是已知的bug还是我做错了什么?
它在Safari 5中也不起作用(没有反应).但它适用于Firefox和Chrome.
我收到一个错误报告,当在iOS 6.1上查看时,该网站崩溃,但我猜这是iOS 6.1附带的浏览器版本,它比操作系统本身更具相关性.我没有任何iOS设备,所以我不确定如何重现/调查此问题.
有没有人建议我如何在Windows/Ubunutu上重现这个问题?我试过http://www.browserstack.com/,但他们提供的最新版本是iOS 6.0.
万一有人知道崩溃发生的原因,请告诉我.主页上有一个嵌入式YouTube视频,我听说flash和iOS都是不安的同床人,所以我想知道这可能是原因吗?
我的网站http://remotejobs.io一直崩溃Safari.我第一次注意到昨晚我在Verizon商店时的崩溃,我尝试在iPad上浏览器测试该网站.所以我在同一家商店再试了两台iPad,并且每次尝试点击域名时,该网站都会在所有3个版本上崩溃iOS Safari.
确切的工作流程是:
而已.一旦你击中网站就崩溃了.
这也发生在桌面Safari上(仅在OSX 10.8.3上的6.0.3中测试),并且每次都会生成错误报告.以下是生成的错误报告之一的副本:http://go.jag.is/OGcS
该网站没有抛出任何JS错误,并且在我测试过的其他现代浏览器上运行良好,包括Chrome,Firefox甚至IE9(令人震惊).
但有一件奇怪的事情是,它似乎只会让iPad上的iOS Safari崩溃,而不是iPhone,因为我每次都可以在iPhone上成功加载网站.
究竟是什么造成了这种情况,我该如何调试呢?
更新: 我尝试评论主样式表,并且该站点不再在没有样式表的情况下崩溃Safari.我尝试了常规样式表和缩小样式表,并且都使浏览器崩溃.
更新2: 我通过注释掉JS并将CSS留在CSS中将其缩小到CSS,但它仍然崩溃了.然后我尝试删除所有过渡属性,它不再崩溃.显然,过渡属性导致了崩溃.
这是我正在处理的项目(代码被复制除了名称改变等)
https://c9.io/schwigri/strange-crash/workspace/index.html
div #logo具有以下风格:
#logo {
-webkit-transition: .4s;
-moz-transition: .4s;
-o-transition: .4s;
transition: .4s;
}
Run Code Online (Sandbox Code Playgroud)
这会导致OS X 10.8.5上的Safari 6.0.5立即崩溃.如果我删除这些转换它不会崩溃.
我该如何解决这个问题?
当我在iPad 4浏览器上查看以下html页面时(无论是Safari还是Chrome),浏览器在缩放时都会崩溃(双击缩放或缩放缩放).该页面包含40个简单的div(由javascript插入以简洁起见)具有属性-webkit-backface-visibility:hidden.
<!doctype html>
<html>
<head>
<style>
.front {
-webkit-backface-visibility: hidden;
position: absolute;
border: 1px solid black;
width: 800px;
height: 800px;
}
</style>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
</head>
<body id="outer">
<script>
$(function() {
for (var i = 0; i < 40; i++) {
$(document.createElement('div'))
.css({top: i*10, left: i*10})
.addClass("front").appendTo($("#outer"));
}
})
</script>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
也许在iPhone和旧版iPad上也会出现同样的问题.这是一个奇怪而烦人的错误; 当我停用-webkit-backface-visibility:内部元素的隐藏样式时,它不会发生.
您可能会问:为什么我不能简单地删除-webkit-backface-visibility:hidden样式,因为它在这个页面上没有任何区别?嗯,这是一个极小的反例,我需要在实际的,更复杂的页面上.