Невозможно отобразить несколько всплывающих подсказок при нажатии в IE 11

#javascript #jquery #tooltip #internet-explorer-11

#javascript #jquery #всплывающая подсказка #internet-explorer-11

Вопрос:

пожалуйста, помогите решить следующую проблему. Я пытаюсь отобразить несколько всплывающих подсказок при нажатии кнопки и скрыть их при втором нажатии кнопки. По какой-то причине я не могу сделать это в IE 11. В примере, который я предоставляю, я могу отлично отображать их при загрузке страницы по умолчанию. Как только я пытаюсь сделать это по щелчку (код закомментирован), ничего не происходит.

 <!DOCTYPE html>
<html lang="en">
<head>
    <title>Bootstrap Example</title>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
</head>
<body>
    <div class="container">
        <h3>Demo</h3>
        <a href="#" data-toggle="tooltip" title="Tooltip is visible!">Tooltip will be visible here</a>

        <a href="#" data-toggle="tooltip" title="Tooltip is visible!">Tooltip will be visible here</a>
        <div>
            <button type="button" class="btn btn-primary">Show Tooltip</button>
            <button type="button" class="btn btn-default">Hide Tooltip</button>
        </div>
    </div>
    <script>
        //works fine  I can see tooltips by default
        $("[data-toggle='tooltip']").tooltip();
        $("[data-toggle='tooltip']").tooltip('show');

        $(document).ready(function () {
 
    $(".btn-primary").click(function () {
       //  doesn't work for some reson
      //  $("[data-toggle='tooltip']").tooltip();
       // $("[data-toggle='tooltip']").tooltip('show');
    });
    $(".btn-default").click(function(){
        $("[data-toggle='tooltip']").tooltip();
        $("[data-toggle='tooltip']").tooltip('hide');
    });
        });

      
           
        
    </script>
</body>
</html>
  

Комментарии:

1. так это работает в реальных браузерах? есть ли какие-либо ошибки в консоли инструментов разработчика вашего так называемого браузера?

2. И что происходит… определите «не работает» более подробно

3. @JaromandaX Вернуться к проблемам с браузером, работающим в Steam , да? 🙂

4. Я отредактировал свой вопрос. Я не вижу никаких ошибок в консоли моего браузера. Я ожидаю увидеть 2 всплывающие подсказки при нажатии кнопки и ожидать, что они исчезнут при нажатии кнопки скрыть. да, это работает в Chrome.

Ответ №1:

 <!DOCTYPE html>
<html lang="en">
<head>
    <title>Bootstrap Example</title>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
</head>
<body>
    <div class="container">
        <h3>Demo</h3>
        <a href="#" data-toggle="tooltip" title="Tooltip is visible!">Tooltip will be visible here</a>

        <a href="#" data-toggle="tooltip" title="Tooltip is visible!">Tooltip will be visible here</a>
        <div>
            <button type="button" class="btn btn-primary">Show Tooltip</button>
            <button type="button" class="btn btn-default">Hide Tooltip</button>
        </div>
    </div>
    <script>
        //make sure to comment this lines
        //works fine  I can see tooltips by default
      //  $("[data-toggle='tooltip']").tooltip();
       // $("[data-toggle='tooltip']").tooltip('show');

        $(document).ready(function () {
 
    $(".btn-primary").click(function () {
        // works fine on IE11
        $("[data-toggle='tooltip']").tooltip();
        $("[data-toggle='tooltip']").tooltip('show');
    });
    $(".btn-default").click(function(){
        $("[data-toggle='tooltip']").tooltip();
        $("[data-toggle='tooltip']").tooltip('hide');
    });
    });

      
           
        
    </script>
</body>
</html>  

Комментарии:

1. ДА. это должно сработать. однако в IE 11 это не работает. и это очень расстраивает.

2. Попробуйте использовать приведенный выше фрагмент, который я только что проверил в IE 11.

3. Теперь это работает. Я считаю, что проблема была не в браузере, а на странице макета моего проекта.

4. Следует предоставить объяснение того, что было изменено и почему … не только в комментариях, чтобы всем читателям сразу стало ясно