【问题标题】:Remove all href links using jquery使用 jquery 删除所有 href 链接
【发布时间】:2018-06-13 22:32:13
【问题描述】:

我正在尝试从已解析站点中删除所有链接,然后该站点已删除 div 并将其放置在主代码中。问题是我试图删除提取的 div 中的所有“href”链接,但无法到达任何地方。我尝试过使用“CSS”并且可以工作,但只能在 chrome 中使用,我必须使用 IE。我查看了“php simple html dom”解析器,看看我是否可以在文件保存之前执行此操作,但无法正常工作。所以我最后的手段是使用'jquery',但问题是要删除的链接是从文件中提取的,而不是直接在代码中。如果有人可以帮助我,我将不胜感激。下面是我正在使用的代码。

<head>
   <meta http-equiv="content-type" content="text/html;charset=UTF-8">
   <meta http-equiv="content-language" content="en">
   <meta name="viewport" content="width=500" />
   <title>example News</title>
   <link rel="stylesheet" type="text/css" href="site/wwwRand1.css">
   <?php 
      include( 'site/simple_html_dom.php'); 
      $html=file_get_html( 'http://example.com/home.php'); 
      $html->save('site/result.htm')                      
      ?>
   <script type="text/javascript" src="site/jquery.js"></script>
   <script type="text/javascript">
      $('document').ready(function() {
      $('#postsArea').load('site/result.htm #postsArea');
      });
   </script>
</head>
<body>
   <div id="wrap">
      <div id="postsArea"></div>
   </div>
</body>

【问题讨论】:

  • 什么……是……那些……桌子?
  • 抱歉,我赶时间,把所有的垃圾都留在了代码中,我现在已经更新了它,希望它是可读的。
  • 这不是关于它对我们来说是否可读,而是我在想 到底在用这些做什么。

标签: javascript jquery html css


【解决方案1】:

只需从 &lt;a /&gt; 标签中删除 href 属性

$("#postsArea").load( "site/result.htm", function() {
   $("#postsArea a").removeAttr("href")
});

如果您仍然希望标签显示为可点击...

$("#postsArea a").removeAttr("href").css("cursor","pointer");

希望对你有帮助

【讨论】:

  • 感谢您的回复,但似乎无法正常工作,而不是提取 div 并显示它,它现在提取整个网页。我会链接我的html代码,看看有没有问题。
  • 在原始代码中完成加载后,只需添加 $("#postsArea a").removeAttr("href")。
  • 谢谢它有效,但按钮仍然有效,但现在导致死胡同。有没有办法完全删除按钮?
  • 不用担心,我使用$('document').ready(function() { $('#postsArea').click(function (event) { event.preventDefault(); }); 解决了我的问题,感谢您的所有帮助,我真的很感激
【解决方案2】:

试试这个:

$('document').ready(function () {
    $.ajax({
         url : 'site/result.htm',
         dataType: 'html',
         success : function(html){
              $html = $(html).find(a).attr("href", "");
              $("#postsArea").html($html);
         },
         error : function(){
              $("#postArea").html("<div>No Data Found.</div>");
         }
    })
});

【讨论】:

    【解决方案3】:

    我是这样做的:

    $(function() {
        $('a[href]').each(function() {                                                                                                                                                                                    
          var link =  jQuery(this);
          link.after(jQuery('<span/>').text(link.text()));
          link.remove();
        });
    });
    

    它将&lt;a href="foo"&gt;Foo&lt;/a&gt; 替换为&lt;span&gt;Foo&lt;/span&gt;

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-04-30
      • 2011-08-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-12-13
      相关资源
      最近更新 更多