выпадающее меню при наведении мыши должно оставаться видимым

0

Кнопка с выпадающим меню должна быть видимой, когда мышь перемещается внутри div, которая работает нормально, но проблема в том, что, когда я вывожу мышь из этого div, я хочу, чтобы кнопка и раскрывающееся меню оставались видимыми, если меню опущено, но кнопка должна быть скрыта, если меню не опустится. Как я могу это достичь? (в данном коде, кнопке и выпадающем меню спрятаться на мыши, независимо от того, что)

<div id="img_container" name="img_container" onmouseover="f()" onmouseout ="g()">
            <img src="image/images.jpg"  alt="Cover" >
            <div class="btn-group" id="cov" name="cov" >
               <button  class="btn dropdown-toggle" data-toggle="dropdown">Action
               </button>
               <ul class="dropdown-menu">
    <!-- dropdown menu links -->
                <li><a href="#">Secondary link</a></li>
            <li><a href="#">Something else here</a></li>
            <li class="divider"></li>
            <li><a href="#">Another link</a></li>
               </ul>
            </div>
        </div>


function f(){
      document.getElementById("cov").style.display="inline-block";
  }

  function g(){
      document.getElementById("cov").style.display="none";
  }

Fiddle

  • 0
    Так какой у тебя вопрос?
  • 1
    возьмите пожалуйста!
Показать ещё 7 комментариев
Теги:
drop-down-menu
onmouseover
onmouseout

3 ответа

1
Лучший ответ

Если я правильно понимаю вас, вы хотите что-то вроде этого:

var list = document.getElementById("dropdown-menu");
var menu = document.getElementById("cov");

function dropdown() {
    if (list.style.display == "none") {
        list.style.display = "block";
    } else {
        list.style.display = "none";
    }
}

function f() {
    menu.style.display = "block";
}

function g() {
    if (list.style.display == "none") {
        menu.style.display = "none";
    } else if (list.style.display == "block"){
        menu.style.display = "block";
    } else {menu.style.display = "block"}
}

Вот ДЕМО

  • 1
    Хорошее решение, это точно отвечает на вопрос!
  • 0
    Спасибо @Tyblitz! Я пытаюсь.
1

Вместо того, чтобы установить style для отображения none, используйте .show() и .hide() в jquery чтобы показать и скрыть конкретный div

$('#cov').hide();

function f() {
    //document.getElementById("cov").style.display = "inline-block";
    $('#cov').show();
}

function g() {
    // $('#cov').hide();
   //document.getElementById("cov").style.display = "none";
}

JSFiddle для отображения div, когда мышь

  • 0
    я не думаю, что проблема с использованием hide () или отображения ...
  • 0
    Вы просите скрыть button если меню не выпадающее. Но у вас уже есть свое меню внутри html . Это значит, что он навсегда выпадет, и вы навсегда не сможете скрыть кнопку
0

Попробуйте эту скрипку, надеюсь, что это то, что вы ищете.

Вам не нужно onmouseout ="g()"

Обновить

попробуйте эту обновленную скрипку

  • 0
    когда я мышью, я хочу, чтобы кнопка скрывалась, если меню не выпадало
  • 0
    обновил скрипку попробуй
Показать ещё 2 комментария

Ещё вопросы

Сообщество Overcoder
Наверх
Меню