superfish - 如何禁用顶级链接
superfish - How to disable the top level links
我使用 superfish 菜单插件 - v1.7.4
我想禁用顶级链接。
我尝试了以下方法:
$(document).ready(function() {
// does not work 1:
$('div#block_top_menu > ul.sf-menu > li > a.sf-with-ul').bind('click', false); // only direct children
// does not work 2:
$('div#block_top_menu > ul.sf-menu > li > a.sf-with-ul').attr("href", "#"); // disable top-level links by replacing with #s
// does not work 3:
$('div#block_top_menu > ul.sf-menu > li > a.sf-with-ul').click(function(){
return false; // disable browser default when link is clicked
})
});
- 1 - 建议 - https://www.prestashop.com/forums/topic/275383-solved-disabling-parent-category-links-in-top-menu/
- 2 - 建议 - https://www.mojoportal.com/Forums/Thread.aspx?pageid=5&mid=34&ItemID=4&thread=5910&pagenumber=1
- 3 - 建议 - https://forum.jquery.com/topic/superfish-menu-how-to-disable-link-at-top-level
但其中 none 有帮助。
可能都与旧版本的 superfish 或其他插件有关。
那么,如何禁用顶级链接?
就我个人而言,这种方法总是有效:
HTML:
<a href="mylink.php" id="mylink">Link here</a>
JS:
jQuery(document).ready(function() {
jQuery('#test').unbind('click').bind('click', function(e) {
e.preventDefault(); //Prevent default behavior
return false;
});
});
方法先解绑任何点击方法,然后再绑定我们的方法。
我用
$('div#block_top_menu > ul > li > a').attr("href", "#");
如@charlietfl 所建议:sf* 类 稍后添加,因此我无法在选择器中使用它们...
我使用 superfish 菜单插件 - v1.7.4 我想禁用顶级链接。
我尝试了以下方法:
$(document).ready(function() {
// does not work 1:
$('div#block_top_menu > ul.sf-menu > li > a.sf-with-ul').bind('click', false); // only direct children
// does not work 2:
$('div#block_top_menu > ul.sf-menu > li > a.sf-with-ul').attr("href", "#"); // disable top-level links by replacing with #s
// does not work 3:
$('div#block_top_menu > ul.sf-menu > li > a.sf-with-ul').click(function(){
return false; // disable browser default when link is clicked
})
});
- 1 - 建议 - https://www.prestashop.com/forums/topic/275383-solved-disabling-parent-category-links-in-top-menu/
- 2 - 建议 - https://www.mojoportal.com/Forums/Thread.aspx?pageid=5&mid=34&ItemID=4&thread=5910&pagenumber=1
- 3 - 建议 - https://forum.jquery.com/topic/superfish-menu-how-to-disable-link-at-top-level
但其中 none 有帮助。
可能都与旧版本的 superfish 或其他插件有关。
那么,如何禁用顶级链接?
就我个人而言,这种方法总是有效:
HTML:
<a href="mylink.php" id="mylink">Link here</a>
JS:
jQuery(document).ready(function() {
jQuery('#test').unbind('click').bind('click', function(e) {
e.preventDefault(); //Prevent default behavior
return false;
});
});
方法先解绑任何点击方法,然后再绑定我们的方法。
我用
$('div#block_top_menu > ul > li > a').attr("href", "#");
如@charlietfl 所建议:sf* 类 稍后添加,因此我无法在选择器中使用它们...