【问题标题】:How to disable bootstrap popover on tap in mobile device如何在移动设备中禁用引导弹出窗口
【发布时间】:2017-03-23 06:49:03
【问题描述】:

我遇到了 bootstrap popover 的一个主要问题,它在桌面上运行良好,但在移动设备上却不行,当我点击具有 pophover 的按钮时,它在第一次点击时打开工具提示,在第二次点击时触发事件。

排序: 引导弹出窗口未在移动设备中一键触发事件,而是显示工具提示。

我想在移动设备上禁用它,或者使用工具提示触发事件。

让我显示代码:

HTML

<div class="container">
  <h3>Popover Example</h3>
  <a href="#" title="Header" data-toggle="popover" data-trigger="hover" data-content="Some content" class="">Hover over me</a>
</div>

JavaScript

$('[data-toggle="popover"]').popover();   
    $('[data-toggle="popover"]').click(function(){
        alert("I am clicked");
})

我尝试了什么

var win = $(window).width();
   if(win<767) {
      $('[data-toggle="popover"]').removeAttr('data-toggle');
      // Or something like this disable popover
      $('[data-toggle="popover"]').popoverDisabled();
    }

那么,是否有任何功能或属性可以解决此问题,任何帮助/建议将不胜感激。

【问题讨论】:

  • 与其尝试在移动设备上禁用弹出框,不如将弹出框代码包装在if 语句中,例如if (!mobile) { ...code }

标签: javascript jquery twitter-bootstrap tooltip


【解决方案1】:

这将起作用:$('.className').popover('disable');

仅适用于移动设备,例如:

if( /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent) ) {
        $('.className').popover('disable');
}

【讨论】:

    【解决方案2】:

    First Check Mobile Version 运行此功能:-

    detectmob();
    function detectmob() {
       if(window.innerWidth <= 800 && window.innerHeight <= 600) {
         $('[data-toggle="popover"]').popover("hide");
       } else {
         return false;
       }
    }
    

    【讨论】:

    • 不,这不工作,我可以知道popover("hide") 做什么
    • 我试过$("[data-toggle='popover']").popover('destroy');但不行
    猜你喜欢
    • 2019-08-09
    • 2021-04-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-02
    相关资源
    最近更新 更多