【问题标题】:Remove href with jquery when clicked单击时用jquery删除href
【发布时间】:2017-11-25 08:24:29
【问题描述】:

链接点击时,我想用 jquery 删除/禁用 href。其实问题不大。 但是我要删除的链接在日历中(事件日历)。

这意味着当我使用月视图并打开网站时,以下代码有效:

$(".tribe-events-month-event-title").attr('href', '').css({'cursor': 'pointer', 'pointer-events' : 'none'});

但是当我选择像七月这样的另一个月份时,代码不再起作用。 所以我想为什么不触发点击时删除链接(或者有更好的方法吗?),但我找不到一个有效的道具。我是编码新手,真的不知道从哪里开始。

日历链接: http://wpshindig.com/

我要删除href的html:

<h3 class="tribe-events-month-event-title"><a href="http://wpshindig.com/event/contribute-to-wordpress/2017-06-08/" class="url">Contribute to WordPress</a></h3>

有点解决方案:无法用 jQuery 解决它...但是

对于想知道如何删除事件日历中的链接的每个人,请转到:plugins/the-events-calendar/src/views/month 复制要更改的文件夹:日、列表、月。然后在您的子主题中创建一个名为“tribe-events”的文件夹,编辑 single-event.php 并将链接替换为 #

【问题讨论】:

    标签: jquery wordpress click href


    【解决方案1】:

    您需要删除锚的 href。只需更改您的代码 $(".tribe-events-month-event-title a").css({'cursor': 'pointer', 'pointer-events' : 'none'});

    此代码将完美运行。

    【讨论】:

    • 也可以使用css来删除。 .tribe-events-month-event-title a{ 'cursor': 'pointer'; 'pointer-events' : 'none' }
    • 如果我切换到另一个,代码可以工作,但不能。不是整个站点都会重新加载,而是日历本身会重新加载。这就是为什么我需要一个在单击时删除链接的代码。此代码仅适用于第一个加载的月份视图。
    • 您可以使用动态点击事件和e.preventdefault
    • 试过这个$(document).on("click", ".tribe-events-month-event-title" function() { $("a").click(function(){ $(this).removeAttr("href"); }); });
    【解决方案2】:

    实际上,您使用的是H4标签而不是a的类来删除href

    试试下面的代码,然后告诉我。

    $(".tribe-events-month-event-title").find("a").attr('href', '').css({'cursor': 'pointer', 'pointer-events' : 'none'});
    

    编辑 1

    &lt;a&gt; 标签上添加onClick 事件,如下所示:

    <h3 class="tribe-events-month-event-title"><a href="http://wpshindig.com/event/contribute-to-wordpress/2017-06-08/" 
     onclick="this.href=''" class="url">Contribute to WordPress</a></h3>
    

    【讨论】:

    • 如果我切换到另一个,代码可以工作,但不能。不是整个站点都会重新加载,而是日历本身会重新加载。这就是为什么我需要一个在单击时删除链接的代码。此代码仅适用于第一个加载的月份视图。
    • 在更改月份的情况下添加这行代码。
    • 我真的不知道在哪里。我还是菜鸟。有没有办法在点击超链接的时候去掉链接?
    • 那么,单击链接后,您希望 href 为空吗?如果是,单击链接时页面是否会刷新?
    • 没错。不,页面不应该刷新。它根本不应该做任何事情:)
    【解决方案3】:
    jQuery(document).ready(function($){
        $(document).on("click",".tribe-events-month-event-title",function(){
            $(this).removeAttr("href");
            return false;
        });
    });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-01-30
      • 1970-01-01
      • 1970-01-01
      • 2010-12-13
      • 2016-09-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多