at.*_*at. 6 html javascript anchor jquery onclick
因此,我知道从链接执行javascript代码有4种主要方法.根据我的要求,我需要在不移动屏幕的情况下这样做(链接到#并且不返回false是坏的).如果可能,执行的javascript代码的SEO也很重要.那么这样做的正确方法是什么?
方法1(需要确保myCode()始终返回false):
<a href="#" onclick="return myCode();">execute</a>
Run Code Online (Sandbox Code Playgroud)
方法2(似乎最有意义?):
<a href="javascript:myCode();">execute</a>
Run Code Online (Sandbox Code Playgroud)
方法3:
<a href="javascript:void(0);" onclick="myCode();">execute</a>
Run Code Online (Sandbox Code Playgroud)
方法4(不像我想的那样在语义上令人愉快):
<span id="executeMyCodeLink" class="link">execute</a>
<script>
$('#executeMyCodeLink').click(myCode);
</script>
Run Code Online (Sandbox Code Playgroud)
使用方法4,您当然可以使用onclick ..
您使页面不跳转并使用带有href和方法4的"a"标记使用preventDefault.
<a id="executeMyCodeLink" href="#">execute</a>
<script>
$('#executeMyCodeLink').click(function(event) {
event.preventDefault();
myCode();
});
</script>
Run Code Online (Sandbox Code Playgroud)
包含一个href非常重要,因为链接不能正确设置样式,否则你的html不会验证.