Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/74.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 图像加载事件在第二页加载时不起作用_Javascript_Jquery_Ruby On Rails - Fatal编程技术网

Javascript 图像加载事件在第二页加载时不起作用

Javascript 图像加载事件在第二页加载时不起作用,javascript,jquery,ruby-on-rails,Javascript,Jquery,Ruby On Rails,我有一个rails 4.2应用程序(没有turbolinks),我想在用js做一些事情之前等待图像加载。我使用了jquery加载回调 $(image).load(function() { // do something here }); 并且希望一切都会好起来,但是它只能在硬加载时工作(osx上的command+shift+R)。如果我通过单击链接导航,那么图像加载事件永远不会触发,图像不会显示在页面上,但DOM说它在那里。我已经想出了一个解决办法,改用promise,但我很想了解为什

我有一个rails 4.2应用程序(没有turbolinks),我想在用js做一些事情之前等待图像加载。我使用了jquery加载回调

$(image).load(function() {
    // do something here
});

并且希望一切都会好起来,但是它只能在硬加载时工作(osx上的command+shift+R)。如果我通过单击链接导航,那么图像加载事件永远不会触发,图像不会显示在页面上,但DOM说它在那里。我已经想出了一个解决办法,改用promise,但我很想了解为什么会出现这种奇怪的行为?

在safari浏览器上?我最近在safari上遇到了一个问题,load event在back event上不起作用,因为safari会缓存内容,所以不会执行js。我想浏览器会缓存图像。那么,除了load event,还有什么替代方法呢?在这种情况下,有趣的是当它被加载并在DOM中可用时。@rorykoehler是否尝试将加载函数放入就绪函数中?@Sebin。。。已在文档就绪函数中。这就是为什么我认为即使缓存它也会触发。在safari浏览器上?我最近在safari上遇到了一个问题,load event在back event上不起作用,因为safari会缓存内容,所以不会执行js。我想浏览器会缓存图像。那么,除了load event,还有什么替代方法呢?在这种情况下,有趣的是当它被加载并在DOM中可用时。@rorykoehler是否尝试将加载函数放入就绪函数中?@Sebin。。。已在文档就绪函数中。这就是为什么我认为即使缓存也会触发它。