我想创作一个锚标记,它可以执行一些JavaScript,然后继续执行href
获取它的任何位置。调用一个函数来执行我的JavaScript,然后将window.location
或top.location
设置为href
位置,这对我不起作用。
因此,假设我在页面上有一个id为"Foo“的元素。我想创建一个类似如下的锚点:
<a href="#Foo" onclick="runMyFunction(); return false;">Do it!</a>
单击此按钮时,我希望执行runMyFunction,然后将页面跳转到#Foo
(不会导致重新加载-使用top.location
会导致页面重新加载)。
有什么建议吗?我很乐意使用jQuery,如果它能在这里有所帮助的话…
发布于 2009-08-28 09:59:24
只使用return true
?
onClick
代码的返回值决定是否处理链接固有的单击操作-返回false
表示不处理它,但如果返回true
,则在函数返回并转到正确的锚点后,浏览器将继续处理它。
发布于 2009-08-28 10:25:41
<a href="#Foo" onclick="return runMyFunction();">Do it!</a>
和
function runMyFunction() {
//code
return true;
}
这样,您将执行您的函数,并且您将遵循该链接,并且在您的函数成功运行之后,您将遵循该链接。
发布于 2009-08-28 10:02:03
如果链接只在函数运行成功时更改位置,则执行onclick="return runMyFunction();"
,在函数中将返回true或false。
如果您只想运行函数,然后让锚标记完成它的工作,那么只需删除return false
语句。
顺便说一句,您可能应该使用事件处理程序,因为内联JS不是一种非常理想的处理方式。
https://stackoverflow.com/questions/1346043
复制相似问题