Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/88.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 仅在指定回调的情况下使用Jquery.load()无法正常工作_Javascript_Jquery_Html_Video - Fatal编程技术网

Javascript 仅在指定回调的情况下使用Jquery.load()无法正常工作

Javascript 仅在指定回调的情况下使用Jquery.load()无法正常工作,javascript,jquery,html,video,Javascript,Jquery,Html,Video,我有一个带有视频的div,我正在修改它在事件上的src属性,然后加载div来播放视频。这一切都很好 html 我想做的是添加$(“#screen”).fadeIn()到加载函数的回调。当我更新代码以执行此操作时: $("video").load(function() { $("#screen").fadeIn(); }); 尽管源属性已正确更新,但回调由于某些原因未触发。有什么想法吗 谢谢。请阅读 与图像一起使用时加载事件的注意事项(同样适用于视频) 开发人员试图使用.load()解决

我有一个带有视频的div,我正在修改它在事件上的src属性,然后加载div来播放视频。这一切都很好

html

我想做的是添加
$(“#screen”).fadeIn()
到加载函数的回调。当我更新代码以执行此操作时:

$("video").load(function() {
    $("#screen").fadeIn();
});
尽管源属性已正确更新,但回调由于某些原因未触发。有什么想法吗

谢谢。

请阅读

与图像一起使用时加载事件的注意事项(同样适用于视频)

开发人员试图使用.load()解决的一个常见问题 快捷方式是在图像(或 图像)已完全加载。有几个已知的警告 这一点值得注意。这些是:

  • 它在跨浏览器中无法稳定工作,也不可靠

  • 如果图像src设置为 和以前一样的src

  • 它不能正确地冒泡DOM树可以停止开火

  • 对于已存在于浏览器缓存中的图像

解决方案:

我建议试试这个:

$("video").on("load",function() {
    $("#screen").fadeIn();
});

将事件侦听器添加到视频:

$("video").on("loadedmetadata", function() {
  $("#screen").fadeIn();
});


mediaevents的完整列表:

在更改
src
属性之前,您是否尝试过放置
load(fn)
处理程序?@RoryMcCrossan也不工作。@例如,您是否尝试过触发警报?@ProllyGeek是的,回调根本没有触发。load函数不带参数,但不带回调。@pwneth可以提供一个fiddle?从jQuery 1.7开始,.on()方法是将事件处理程序附加到文档的首选方法。有没有办法等到视频实际加载后再执行fadein?目前,这仍在加载时触发fadeIn,而不是在加载后finished@pwneth是的,但您需要将视频定义为对象,然后使用native.onloadLet。
$("video").on("load",function() {
    $("#screen").fadeIn();
});
$("video").on("loadedmetadata", function() {
  $("#screen").fadeIn();
});