代码之家  ›  专栏  ›  技术社区  ›  user285594

列表框未提交并卡在触摸屏上

  •  0
  • user285594  · 技术社区  · 9 年前

    我有下面这段代码,它适用于鼠标,但从2016年开始被触摸屏使用。

    通常(并非100%可靠)当某人选择选项项时,该选项项不会执行 onclick 而不是提交函数。

    有谁能建议一下如何使它与触摸屏和鼠标兼容吗?

    HTML:

    <div id="form_map_module3b1_new" class="submits">
      <div id="list_3b1_head" style="position: absolute; left: 192px; top: 2px;  border: none;font-size:20px;background-color: black;color:white;"></div>
      <select name="sometext" size="5" id="list_3b1" 
                style="position: absolute; left: 192px; top: 106px; width: 896px; height: 548px; border: none;font-size:20px;">  
        </select>     
    </div>
    

    JavaScript:

    function button_submit(input) {
      // do some task and hide   
      $('#form_map_module3b1_new').hide(); 
    }
    
    function flood_listbox() {
      $('#list_3b1').html('');
      var part_one = '1';
      var part_two = 'Once upon a time there was a list box';
      var part_two_internal = part_two.replace(/'/g, "");    
    
      // we have list of 100 items actually.
      $('#list_3b1').append('<option  style="padding:10px 0px;" onclick="button_submit(' + part_one + ',\'' + part_two_internal + '\');">' + part_two + '</option>');       
    
    
    }
    
    flood_listbox();
    
    1 回复  |  直到 9 年前
        1
  •  0
  •   user285594 user285594    9 年前

    它有效。

    • 问题是,当您使用时,选项具有文本值,但您触摸了文本值不可见的选项行,那么它会选择整行。但如果你按下选项文本,它不会画出那条蓝线。