href="#xxx" and href="javascript:jumpTo('xxx');"
可以工作,方法jumpTo是这样的:
function jumpTo(anchor) {
window.location.href= '#' + anchor;
}
然而,href="javascript:window.location.href='#xxx';"
不起作用,我想知道为什么?
答案 0 :(得分:0)
使用<a href="javascript:'#xxx'">Test</a>
URI时,如果表达式产生 truthy 值,that value is written out as the sole content of the page。
由于赋值运算符返回指定的值,因此其行为类似于:
undefined
阻止输出值的一个选项是在表达式的开头添加void
operator,它返回<a href="javascript:void window.location.hash='#xxx';">Test</a>
( falsy 值):< / p>
jumpTo()
此外,使用void
时,结果与使用return
相同。由于该函数没有明确undefined
一个值,因此默认情况下会产生IN.API.Raw("/people/~:(id,first-name,last-name,location,positions)?format=json").result(onSuccess).error(onError);
值。