jQuery .unload()函数问题,仅在单击特定链接时激活

法比安

我正在使用Bootstrap构建站点,并创建了带有某些链接的导航栏。索引页面由导航栏和带有单个div的主体组成,该主体通过jQuery的ajax功能(取决于导航栏中单击的链接,该页面显示在div中)来提取内容(我创建的页面)。

该网站面向有权根据我创建的文件夹设置访问页面的用户(如果用户有权访问文件夹,则可以查看其中的页面)。它在大多数情况下都能正常工作,但是当没有访问页面权限的用户单击链接时,我认为错误页面会显示在div中。但是,它只会使用户完全离开站点跳到错误页面。

我的解决方案是使用jQueryunload事件。我把它放在一个.js文件中:

$( window ).unload(function() {
  alert( "Bye now!" );
});

但是,当我单击任何外部链接,关闭浏览器或刷新页面时,都会显示一个弹出窗口。我只希望在用户单击特定链接(具有id类的链接)时激活它。我想让他们知道他们单击了他们无权访问的链接,并且如果他们没有停留在该页面上,它们将被转发到错误页面。我将如何去做呢?

-更新-这是到JSFiddle的JSFiddle链接

因此,例如,所有用户都可以访问“技术”页面,因此,当他们单击导航栏上的该链接时,该链接将被提取并显示在div ID“结果”中。但是,只有部分用户可以访问页面“检查”;只有部分用户可以访问页面“检查”。对于那些访问该页面的用户,对于那些没有访问该页面的用户,会将其从我的页面重定向到外部错误页面。我希望弹出警告,以便他们知道他们没有访问权限,并且如果他们点击打开的链接,他们将最终出现在错误页面上。

-更新2 ---使用Genuis先生的代码使其正常工作,但是我还有最后一个问题。我实现了代码,并为无法访问链接的用户显示了一个弹出窗口(正是我想要发生的情况),但是当他们单击“确定”按钮或单击弹出窗口上的“ x”按钮时,他们仍会转发到错误页面。反正有禁用它吗?我尝试使用此代码更新卸载功能(Genuis先生提供的功能),并且可以正常工作(它为用户提供了选择停留在当前页面上的选项,以防止错误页面被加载),但是当用户尝试关闭浏览器页面。我只希望它在单击链接时触发。这是我使用的代码:

$(window).bind('beforeunload', function(){ return '>>>>>Before You Go<<<<<<<< \n Your custom message go here'; })

一个人

我真的不确定您的方法是否适合给定的问题。

关于有条件地激活窗口卸载事件,

将卸载事件的联播移动到链接单击事件内,这样,仅在需要时才联结窗口卸载事件。不总是!

更新:

像下面这样。仅用于说明目的。

警告:我觉得这种方法有异味。

$(".link").click(function(){
   if(true){//Your condition check goes here.

      $( window ).unload(function() {
        alert( "Bye now!" );
       });
    }
    else{
        window.location.href = "someurl";
    }
});

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

jQuery函数仅在首次单击时返回[object Object]

来自分类Dev

jQuery手风琴:单击跳转链接时激活面板

来自分类Dev

在单击按钮时调用函数时的jQuery代码问题

来自分类Dev

jQuery仅在单击时执行if / else语句的'if'

来自分类Dev

jQuery仅在单击时显示-不在加载时单击

来自分类Dev

jQuery。单击链接时调用函数

来自分类Dev

jQuery-打开并单击特定的rel链接

来自分类Dev

使用jQuery单击链接时更改文本

来自分类Dev

jQuery在单击链接时获取URL

来自分类Dev

用jQuery单击时显示div的问题

来自分类Dev

使用jQuery单击链接

来自分类Dev

JS在加载时单击Jquery函数

来自分类Dev

JS在加载时单击Jquery函数

来自分类Dev

jQuery:当单击任意位置时如何单击链接?

来自分类Dev

激活阈值时JQuery Flot出现问题

来自分类Dev

在特定按钮单击时触发jQuery AJAX

来自分类Dev

使用jQuery单击链接时更改链接背景颜色

来自分类Dev

仅在单击时打开Jquery-ui工具提示

来自分类Dev

为什么jQuery的.change()事件仅在右键单击时触发?

来自分类Dev

jQuery信用卡验证器仅在提交或单击时

来自分类Dev

如何在单击时激活粗体标签,并在HTML / javascript / jquery中再次单击时停用

来自分类Dev

添加新链接时重置jQuery“单击时”绑定器

来自分类Dev

jQuery仅在单击时运行

来自分类Dev

单击时如何在jquery中访问超链接属性

来自分类Dev

单击带有Jquery的菜单链接时添加活动的类

来自分类Dev

jQuery在单击链接时将数据属性传递给模式

来自分类Dev

如何获得使用jQuery附加的单击时超链接的ID

来自分类Dev

单击链接时显示jQuery手风琴?

来自分类Dev

单击链接时,rails jquery脚本不起作用

Related 相关文章

热门标签

归档