我有两个文件index.php
和settings.php
。
在index.php
上有一个按钮,用户可以在点击时将用户重定向到settings.php
。
<div id="settings">
Settings
</div>
<script>
$("#settings").on
(
"click",
function()
{
window.location.href = "settings.php";
}
);
</script>
settings.php
上还有一个按钮,点击后会再次重定向回index.php
。
<div id="menü">
Menü
</div>
<script>
$("#menü").on("click", redirect("index.php"));
function redirect(url)
{
window.location.replace(url);
}
</script>
但如果我点击“设置”按钮,则settings.php
正在加载,我会立即重定向到index.php
。
但是,如果我使用此代码,则它不会立即重定向:
$("#menü").on("click", function() { redirect("index.php");});
如果我使用此类事件,为什么我总是需要在function()
中包装所有内容?
答案 0 :(得分:1)
.on()函数的第二个参数应该是回调函数或匿名函数。因此,在您的情况下,第二个参数是函数调用,因此它将直接调用函数而无需等待click事件。