JQuery:脚本在控制台中工作,但不在附件中

时间:2014-09-05 19:06:25

标签: javascript jquery wordpress

我正在开发一个拥有大量javascript的自定义Wordpress网站(全部由其他开发者开发)

我正在尝试将脚本添加到scripts.js文件的底部,并且它无法在任何地方使用。它适用于控制台。它适用于Firefox。 它在自己的文档就绪功能中。 准备就绪的文件正在运行(我使用了一个警报来测试这个),但是这个doc ready函数中的警报,控制台日志和脚本只能在控制台(或firefox)内部工作,而不能在chrome中的scripts.js文件中工作和野生动物园。

这是我的代码(点击视频窗口进行视频播放和暂停,而不仅仅是播放控件)

  jQuery(document).ready(function () {
   // alert('working')
    /**
     *  This module controls the video players
     */
      jQuery('video').click(function(){
        //alert('working');
        this.paused?this.play():
        this.pause();
        //console.log(this);
    });

});

非常感谢任何帮助。

2 个答案:

答案 0 :(得分:0)

也许这是不同的JS-Engines的问题!

如果您将jQuery('video').click(function(){console.log(this);});移到旧文件来源的准备部分内,您是否尝试过会发生什么?

答案 1 :(得分:0)

我假设这是因为你的视频元素实际上并不存在,或者在就绪事件发生后被切换出来。

firefox可能会在你准备好的事件发生之前加载视频元素,但这可能会因javascript和html被解释的速度而有所不同。

不要将事件直接放在“视频”元素上,而是将其放在带有“视频”过滤器的文档上。

http://jsfiddle.net/2kmxL1h4/1/

jQuery(document).on('click', 'video', function () {
        //alert('working');
        this.paused ? this.play() : this.pause();
        //console.log(this);
    });