【问题标题】:Jquery Youtube Iframe Mouseenter and Mouseleave on hoverJquery Youtube Iframe Mouseenter 和 Mouseleave 悬停
【发布时间】:2016-08-04 21:47:39
【问题描述】:

我在网站上有很多视频,我在悬停的 iframe 上播放。并且在鼠标离开时它应该停止播放。

悬停和播放有效。但是 Mouseleave 不起作用,我不知道为什么。

$(document).ready(function() {
		  $(".youtube").each(function() {
		    $(this).css('background-image', 'url(//i.ytimg.com/vi/' + this.id + '/hqdefault.jpg)');
		    $(document).delegate('#' + this.id, 'mouseenter', function() {
				if($(this).data('mouseenter')) {
					return;
				}
				$(this).data('mouseenter', true);

		      var iframe_url = "//www.youtube.com/embed/" + this.id + "?autoplay=1&autohide=1";
		      if ($(this).data('params')) iframe_url += '&' + $(this).data('params');
		      var iframe = $('<iframe/>', {'allowfullscreen':'allowfullscreen', 'frameborder': '0', 'src': iframe_url})
		      $(this).append(iframe);
		    });
			  var playersrc=$('.youtube').attr('src');
		  });
		});
&lt;script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"&gt;&lt;/script&gt;

【问题讨论】:

  • 需要 HTML,因为这涉及到鼠标事件。一个工作的例子会很好,因为你让 mouseenter 部分工作。

标签: javascript jquery mouseenter mouseleave


【解决方案1】:
$(document).delegate('#' + this.id, 'mouseleave', function() {
            if($(this).data('mouseleave')) {
                alert("not first time, but mouseleave is still detected");
                return;
            }
            alert("first time your cursor is quitting this iframe, mouseleave detected");
            $(this).data('mouseleave', true);
        });

这对我有用!

【讨论】:

    猜你喜欢
    • 2014-04-15
    • 1970-01-01
    • 2012-11-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多