我有一个问题,使用jQuery // Should pass only if your implicit isn't in scope,
// and the underlying class doesn't define the hello method
assertTypeError("(new HeyMan).hello")
和headjs framework v1.0.3,带有head.ready功能,仅在Internet Explorer上(版本11,我不能尝试旧版本),只有一次十点......
在我$(document).ready
之前:
</body>
有时候,$(document).ready事件不会被触发。 它适用于Chrome和Firefox。
head.load('//ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js',function() {
head.load('//ajax.googleapis.com/ajax/libs/jqueryui/1.10.4/jquery-ui.min.js');
head.ready(function() {
$(document).ready(function() {
$('.class').show();
});
});
});
我试图将$(window).load doesn't work better.
排除在外但是徒劳无功:
head.ready()
我找到了使用head.load('//ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js',function() {
head.load('//ajax.googleapis.com/ajax/libs/jqueryui/1.10.4/jquery-ui.min.js');
});
head.ready(function() {
$(document).ready(function() {
$('.class').show();
});
});
代替head.ready
的解决方案,但我无法使用此解决方案,因为$(document).ready
中的部分来自与不使用headjs的平台共享的代码。
是否有人遇到此问题或有解决方案?
答案 0 :(得分:0)
我的猜测是有竞争条件。您可能希望检查文档是否已处于就绪状态,因为document.ready
不会激活
head.ready(function() {
var readyfunc = function(){
$('.class').show();
};
if (document.readyState === 'complete'){
readyfunc();
}else{
$(document).ready(function() {
readyfunc();
});
}
}
看看是否有效。