javascript - 如何让 jQuery 在 Wordpress 的新选项卡中仅打开此代码的帖子链接

标签 javascript jquery wordpress

我的 header.php 中有这段代码:

<script type="text/javascript" src="/js/jquery.js"></script> 
<script type="text/javascript"> 
    jQuery(document).ready(function() { 
       jQuery("a").click(function(){ 
          jQuery("a").attr("target","_blank"); 
          url=jQuery(this).attr('href'); 
          jQuery(this).attr('href','/te3/out.php?l=click&u=' + escape(url)); 
       }); 
    }); 
</script>

现在它会在新的浏览器选项卡中打开所有链接。我想要的是只打开帖子。如果这有任何帮助的话,永久链接看起来像 mywebsite.com/this-is-the post/。

请帮忙

谢谢

最佳答案

您可以使用 jQuery 的 .filter() 方法过滤链接。只需自定义正则表达式即可满足您的实际需求

jQuery(document).ready(function() { 
  jQuery("a")
    .filter(function() {
      var href = jQuery(this).attr('href');
      // return true if href exists and matches the regular expression
      return href && href.match(/mywebsite\.com\/[\w-]+/);
    })
    .click(function(){ 
      jQuery("a").attr("target","_blank"); 
      url = jQuery(this).attr('href'); 
      jQuery(this).attr('href','/te3/out.php?l=click&u=' + escape(url)); 
    }); 
}); 

更新

如果您想要相反的行为,可以使用.not()

jQuery(document).ready(function() { 
  jQuery("a")
    .not(function() {
      var href = jQuery(this).attr('href') || '';
      // return true if href exists and matches the regular expression
      return href.match(/mywebsite\.com\/[\w-]+/);
    })
    .click(function(){ 
      jQuery("a").attr("target","_blank"); 
      url = jQuery(this).attr('href'); 
      jQuery(this).attr('href','/te3/out.php?l=click&u=' + escape(url)); 
    }); 
});

关于javascript - 如何让 jQuery 在 Wordpress 的新选项卡中仅打开此代码的帖子链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28208146/

相关文章:

php - 安装 WordPress 插件时出现 cURL 错误 60

php - JQuery AJAX + PHP 登录

javascript - 循环内的jQuery多个延迟动画,动画有时不执行

php - Wordpress 模板中框的 CSS 网格

javascript - 如何在文本区域中添加最小 250 和最大 1000 字数的验证?

javascript - 递归循环 JavaScript 后使用自定义 HTML 元素作为 JSON 键变量

mysql - 清理 MySQL 查询、Wordpress wp_postmeta

javascript - 如果执行异步操作,yield 表达式会阻塞吗?

javascript - html Canvas 中图像的主色转换

javascript - 检查变量是否初始化为 JavaScript 中的数字的标准方法是什么?