Jquery 除了Firefox以外的所有浏览器都有鼠标缺陷吗?

Jquery 除了Firefox以外的所有浏览器都有鼠标缺陷吗?,jquery,mouse,scrollbar,live,Jquery,Mouse,Scrollbar,Live,对于动态添加的元素(Firefox除外),鼠标不会在滚动条上启动: CSS: #dBox { height: 100px; width: 230px; overflow - y: auto; } $(function() { $('#s').focus(function() { var $dbox = $('<ul id="dBox"></ul>'); for (i = 0; i < 10; i++)

对于动态添加的元素(Firefox除外),鼠标不会在滚动条上启动:

CSS:

#dBox {
    height: 100px;
    width: 230px;
    overflow - y: auto;
}
$(function() {
    $('#s').focus(function() {
        var $dbox = $('<ul id="dBox"></ul>');
        for (i = 0; i < 10; i++) $dbox.append('<li>' + i + '</li>');
        $(this).after($dbox);
        $dbox.bind("mouseup", function() {
            alert('in: ');
            //console.log ('in: ');  
        });
    });
});
// OR LIKE THIS
$('#s').focus(function() {
    var $dbox = $('<ul id="dBox"></ul>');
    for (i = 0; i < 10; i++) $dbox.append('<li>' + i + '</li>');
    $(this).after($dbox);

});
$('#dBox').live("mouseup", function() {
    alert('in: ');
    //console.log ('in: ');  
});
HTML:

#dBox {
    height: 100px;
    width: 230px;
    overflow - y: auto;
}
$(function() {
    $('#s').focus(function() {
        var $dbox = $('<ul id="dBox"></ul>');
        for (i = 0; i < 10; i++) $dbox.append('<li>' + i + '</li>');
        $(this).after($dbox);
        $dbox.bind("mouseup", function() {
            alert('in: ');
            //console.log ('in: ');  
        });
    });
});
// OR LIKE THIS
$('#s').focus(function() {
    var $dbox = $('<ul id="dBox"></ul>');
    for (i = 0; i < 10; i++) $dbox.append('<li>' + i + '</li>');
    $(this).after($dbox);

});
$('#dBox').live("mouseup", function() {
    alert('in: ');
    //console.log ('in: ');  
});

JQuery:

#dBox {
    height: 100px;
    width: 230px;
    overflow - y: auto;
}
$(function() {
    $('#s').focus(function() {
        var $dbox = $('<ul id="dBox"></ul>');
        for (i = 0; i < 10; i++) $dbox.append('<li>' + i + '</li>');
        $(this).after($dbox);
        $dbox.bind("mouseup", function() {
            alert('in: ');
            //console.log ('in: ');  
        });
    });
});
// OR LIKE THIS
$('#s').focus(function() {
    var $dbox = $('<ul id="dBox"></ul>');
    for (i = 0; i < 10; i++) $dbox.append('<li>' + i + '</li>');
    $(this).after($dbox);

});
$('#dBox').live("mouseup", function() {
    alert('in: ');
    //console.log ('in: ');  
});
$(函数(){
$('#s')。焦点(函数(){
var$dbox=$('
    ); 对于(i=0;i<10;i++)$dbox.append('
  • '+i+'
  • '); $(this).after($dbox); $dbox.bind(“mouseup”,function(){ 警报('in:'); //console.log('in:'); }); }); }); //还是像这样 $('#s')。焦点(函数(){ var$dbox=$('
      ); 对于(i=0;i<10;i++)$dbox.append('
    • '+i+'
    • '); $(this).after($dbox); }); $('#dBox').live(“mouseup”,function(){ 警报('in:'); //console.log('in:'); });
      如果单击
      ul上的任意位置,将触发
      ,但不会在滚动条上触发。除了Firefox之外,所有浏览器都存在同样的问题

      如果将“mouseup”替换为“mousedown”,则在所有浏览器中,滚动条上也会触发“mousedown”


      经过几次测试后,如果“ul”是不是自动添加的,似乎没有什么区别,鼠标似乎无法识别滚动条是“ul”的一部分(FF除外)

      如果将“ul”替换为“div”,将“li”替换为“p”,则会出现同样的问题。
      1

      2

      3

      4

      5

      6

      7

      8

      9


      $('#dBox').mouseup(函数(){alert('in:');})

      是的。以下是Chrome上的开放bug:

      和在webkit上:和

      下面是来自微软的一个居高临下的“你不需要它”回应:


      最后一个线程提出了使用onscroll替代onmouseup的可能性。这可能是一个局部的解决办法。

      我认为您无法让IE触发mouseup事件。你想做什么?@InvisibleBacon我只是想做一个简单的弹出选择列表。但IE不会在“mousedown”中返回false。所以我试着做了一个尝试:在“mousedown”上解开模糊,然后在“mouseup”上再次绑定模糊。但我发现mouseup不会在所有眉毛的滚动条上启动(FF除外):经过几次测试后,似乎即使ul和li放在原始文档上,mouseup也不会在滚动条上启动。(FF除外)