我无法触发document.load事件,而在jQuery 2+中,也不能让document.ready触发。如何使document.ready在jQuery 2+中工作,以及如何使.load工作?
谢谢!
Fiddle:http://jsfiddle.net/2x7SP/2/
(function($) {
$(document).ready(documentReadyFunction);
$(document).load(afterPageLoad);
function documentReadyFunction() {
$('#readytext').val('READY');
}
function afterPageLoad () {
//alert ('loaded');
$('#loadtext').val('LOAD');
}
})(jQuery);发布于 2014-02-04 19:55:40
load事件由窗口触发,而不是由文档触发。通过改变它,它工作得很好。
代码:
(function ($) {
$(document).ready(documentReadyFunction);
$(window).load(afterPageLoad);
function documentReadyFunction() {
$('#readytext').val('READY');
}
function afterPageLoad() {
//alert ('loaded');
$('#loadtext').val('LOAD');
}
})(jQuery);jQuery 2放弃了对旧IE版本http://blog.jquery.com/2013/04/18/jquery-2-0-released/的支持:
正如承诺的那样,这个版本留下了旧的6、7和8浏览器。作为回报,它更小、更快,并且可以在JavaScript环境中使用,在这些环境中,旧的IE兼容性所需的代码往往会导致自身的问题。但是不要担心,jQuery团队仍然支持运行在IE6/7/8上的1.x分支。您可以(而且应该)继续在需要容纳旧浏览器的网站上使用jQuery 1.9 (以及即将到来的1.10)。
如果您需要支持IE<9,则必须切换到jQuery 1.x。
参考文献:http://jquery.com/browser-support/
演示:http://jsfiddle.net/IrvinDominin/7CpF7/
发布于 2014-02-04 19:57:50
有两个问题:
document.load这样的东西。load事件仅由与URL关联的元素触发,如图像或iframe,或window对象,这可能是您想要使用的对象。load处理程序中,这意味着load已经启动了。只要您将document.load替换为window.load,代码就可以了。
$(window).load(afterPageLoad);不要在load事件中包装jQuery。固定小提琴:http://jsfiddle.net/tNUv2/
发布于 2014-02-04 20:01:41
这对我来说很管用:
function documentReadyFunction() {
$('#readytext').val('READY');
}
function afterPageLoad() {
$('#loadtext').val('LOAD');
}
$(document).ready(documentReadyFunction);
$(window).load(afterPageLoad);小提琴
https://stackoverflow.com/questions/21561878
复制相似问题