[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: dropdown на JS..
Por$h
Hello.
На странице есть множество таб с одинаковыми элементами/блоками html'a
есть dropdown менюшка сделанная на js.
одинаковые блоки html менюшки расположены в разных табах.
Проблема: менюшка срабатывает только на первом блоке, который встречается в HTML, в остальных игнор(без ошибок).

HTML:

1 ТАБ
<div class="tab-pane" id="create-attachments-subtab">
<div
class="form_buttons">
<button
class="hide-in-confirm"><i class="fa fa-plus left-icon"></i> Add</button>
<button
class="hide-in-confirm"><i class="fa fa-times left-icon"></i> Delete</button>
<div
id="print_wrapper">
<button
type="button" class="" id="btnAction">
<i
class="fa fa-ellipsis-v"></i> Action
</button>
<div
class='btn-submenu' id='printSubmenu'>
<ul >
<li><a
href="#" class="btnConfirm" customkey="c">Confirm</a></li>
<li><a
href="#" class="btnUnconfirm" customkey="u">Unconfirm</a></li>
<li><a
href="#" class="btnReject" customkey="r">Reject</a></li>
</ul>
</div>
</div>
</div>
</div>

--------
2 ТАБ:
<div class="tab-pane" id="create-notes-subtab">
<div
class="form_buttons">
<button
class="create-btn hide-in-confirm"><i class="fa fa-plus left-icon"></i> Add</button>
<button
class="edit-btn hide-in-confirm"><i class="fa fa-pencil left-icon"></i> Edit</button>
<button
class="delete-btn hide-in-confirm"><i class="fa fa-times left-icon"></i> Delete</button>
<div
id="print_wrapper">
<button
type="button" class="" id="btnAction">
<i
class="fa fa-ellipsis-v"></i> Action
</button>
<div
class='btn-submenu' id='printSubmenu'>
<ul >
<li><a
href="#" class="btnConfirm" customkey="c">Confirm</a></li>
<li><a
href="#" class="btnUnconfirm" customkey="u">Unconfirm</a></li>
<li><a
href="#" class="btnReject" customkey="r">Reject</a></li>
</ul>
</div>
</div>
</div>
</div>


JS:

	function initPrintDropDown(button, submenu) {
var btnPrintEl = $(button);
console.log("btn: "+btnPrintEl);
var menu = $(submenu);
console.log("submenu: "+ menu);
$(btnPrintEl).mouseenter( function(e){
e.preventDefault();
var pos = btnPrintEl.position();
menu.css("left", pos.left );
menu.css("top", (pos.top + btnPrintEl.height() + "px"));
menu.css("width", (btnPrintEl.width()+40) + "px");
menu.slideDown(500);
} );
$("a", menu).click(function(){
menu.stop(true, true);
menu.slideUp(500);
});
$('#print_wrapper').mouseleave(function(){
menu.stop(true, true);
menu.slideUp(500);
});
}


вызов:
initPrintDropDown("#btnAction", "#printSubmenu");


как это решается, когда одинаковые имена идентификаторов ?
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.