【问题标题】:Need to double click on Firefox需要双击火狐
【发布时间】:2015-10-27 07:54:48
【问题描述】:

我有我的代码:

+function($) {
'use strict';
var Ripple = function(element) {
    var $this = $(this)
    $(element).on('mousedown', $this.start)
}
Ripple.prototype.start = function(e) {
    var $this = $(this)
    var r = $this.find('.ripple-wave')
    if(r.length == 0) {
        $this.prepend('<div class="ripple-wave"></div>')
        r = $this.find('.ripple-wave')
    }
    if($this.hasClass('btn') || $this.hasClass('single-action')) {
        var posX = $(this).offset().left, posY = $(this).offset().top
        r.css('left', e.pageX - posX)
        r.css('top', e.pageY - posY)
    }
    r = r.parent()
    r.addClass('active')
    r.one('webkitAnimationEnd oanimationend msAnimationEnd animationend', function(e) {
        r.removeClass('active')
    })

}

var old = $.fn.ripple

$.fn.ripple = function() {
    return this.each(function() {
        new Ripple(this)
    })
}

$.fn.ripple.Constructor = Ripple

$.fn.ripple.noConflict = function () {
    $.fn.ripple = old
    return this
}}(jQuery);

但如果我在 Mozilla Firefox 上进行测试,我必须双击该元素才能执行其功能。

我使用以下方法将其初始化为我的页面加载:

$('.ripple').ripple()

PS:我也有其他 JS 文件中每个元素的点击事件。

在 chrome 中,单击即可正常工作。

【问题讨论】:

  • 你能贴出 html 来重现它吗?
  • 不认为这可以解决您的问题,但 $(element).on('mousedown', $this.start) 不应该是 $(element).on('mousedown', this.start)
  • 能否请您提供完整的 JQuery 代码、完整的 html 代码,并可能更好地说明您的问题?
  • 如果能提供一个jsFiddle来帮助调试就更好了:)

标签: javascript html ripple


【解决方案1】:
  1. $( "p" ).dblclick(function() { alert( "Hello World!" ); });

  2. &lt;p ondblclick="myFunction()"&gt;Double-click me&lt;/p&gt;

【讨论】:

  • 这是我对您已删除问题的评论。开始学习PHP。主要优点不是它比 C++ 简单。主要优点是与 C++ 相比,它提供了良好的工作机会。任何地方都不需要 C++ 程序员。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-01-04
  • 2011-08-02
  • 2013-10-30
  • 2011-08-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多