我想使用它的ID來禁用子頁面中的主菜單項。試過「setAttribute
」和「disabled
」選項。如何禁用在子頁面中使用JavaScript的主菜單?
document.getElementById("bloc_menu:j_id14").setAttribute("disabled","disabled");
document.getElementById("bloc_menu:j_id14").disabled = true;
歡迎任何建議,謝謝你。
我想使用它的ID來禁用子頁面中的主菜單項。試過「setAttribute
」和「disabled
」選項。如何禁用在子頁面中使用JavaScript的主菜單?
document.getElementById("bloc_menu:j_id14").setAttribute("disabled","disabled");
document.getElementById("bloc_menu:j_id14").disabled = true;
歡迎任何建議,謝謝你。
我仍然不是100%確定你要做什麼或爲什麼你不能處理這個服務器端,但我已經做了一個可以禁用/啓用的簡單菜單的例子。
var $mainMenu, $links;
$(function() {
$mainMenu = $('#main-menu');
$links = $mainMenu.find('.menu-item__link').each(function() {
var $link = $(this);
$link.data('href', $link.attr('href'));
});
$('#toggle-main-menu').on('click', function() {
toggleMainMenu();
});
});
function toggleMainMenu() {
if ($mainMenu.hasClass('disabled')) {
$mainMenu.removeClass('disabled');
restoreLinks();
}
else {
$mainMenu.addClass('disabled');
removeLinks();
}
}
function removeLinks() {
$links.removeAttr('href');
}
function restoreLinks() {
$links.each(function() {
var $link = $(this);
$link.attr('href', $link.data('href'));
});
}
#main-menu .menu-item__link {
color: #000;
}
#main-menu.disabled .menu-item__link {
color: #ccc;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<ul id="main-menu">
<li class="menu-item">
<a class="menu-item__link" href="#someLink1">Some link 1</a>
</li>
<li class="menu-item">
<a class="menu-item__link" href="#someLink2">Some link 2</a>
</li>
<li class="menu-item">
<a class="menu-item__link" href="#someLink3">Some link 3</a>
</li>
</ul>
<button id="toggle-main-menu">Toggle the menu</button>
對我來說,它是用簡單的code.document.getElementById(「bloc_menu:j_id14」)。style.pointerEvents ='none'; –
這隻適用於鼠標事件。如果你選擇你的鏈接並點擊鍵盤上的Enter鍵,你仍然可以觸發鏈接。 – vi5ion
隨着變革的重點,我們可以管理。謝謝您的意見。 –
分享您的演示與元素'bloc_menu:j_id14'這是不工作 – C2486
的'disabled'屬性僅適用於一對夫婦的元素,所有這些都與形式。菜單通常不是表單,所以我想知道你的實際HTML是什麼樣的。 – vi5ion
什麼類型的元素是document.getElementById(「bloc_menu:j_id14」)?我猜它不支持'disabled'財產 –