function back(num = -1) { window.history.go(num) }如何修改这段代码判断上一页是否是登陆页,是就跳转到上上页
时间: 2024-02-13 14:06:02 浏览: 68
可以使用以下代码来实现该功能:
```
function checkLogin() {
var previousUrl = document.referrer; // 获取上一页的链接
if (previousUrl.includes("login")) { // 判断上一页是否为登陆页
back(2); // 跳转到上上页
} else {
back(); // 返回上一页
}
}
checkLogin(); // 调用函数进行判断
```
这段代码中,我们使用 `includes` 方法来判断上一页链接中是否包含 "login" 这个关键字,如果包含,则调用 `back(2)` 跳转到上上页,否则调用 `back()` 返回上一页。需要注意的是,这里我们只判断链接中是否包含 "login",而不是判断链接是否以 "login.html" 结尾,因为有可能登陆页的链接不是以 .html 结尾。
相关问题
function back(num = -1) { window.history.go(num) }如何排除上一页是登录页
您可以在登录页面设置一个标志,例如将登录页的url设置为特定的url,然后在back函数中检查当前页面的url是否为登录页的url,如果是,则跳过该页面,直接返回前两个页面,可以使用`history.go(-2)`实现。以下是代码示例:
```
function back() {
if (document.referrer.indexOf('login') !== -1) {
window.history.go(-2);
} else {
window.history.back();
}
}
```
这个back函数首先检查当前页面的referrer是否包含"login",如果是,则返回前两个页面,否则返回前一个页面。请注意,referrer属性可能会受到浏览器的限制,因此这种方法可能不是100%可靠。
function back(num = -1) { window.history.go(num) }怎么设置除了退回登陆界面
要实现除了退回登陆界面以外的操作,你需要在调用 `back` 函数时传递一个参数,该参数应该是指向你想要返回的页面的历史记录的相对位置。例如,如果你想要返回到上一个页面,你可以调用 `back(1)`,如果你想要返回到上上个页面,你可以调用 `back(2)`,以此类推。
如果你想要实现除了退回登陆界面以外的操作,你可以在 `back` 函数内部添加一些逻辑,例如判断当前页面的 URL 是否为登陆页面的 URL,如果是,则退回上一个历史记录,否则按照传入的参数进行页面跳转。下面是一个示例代码:
```javascript
function back(num = -1) {
if (window.location.href.endsWith('/login')) {
window.history.go(num);
} else {
// 根据传入的参数跳转到指定的历史记录
window.history.go(num);
}
}
```
在实际应用中,你需要根据你的具体需求来修改这段代码。
阅读全文