javascript - 去除a标签的href

查看:280
本文介绍了javascript - 去除a标签的href的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

状况:用了畅言的插件,代码在下面,默认只显示登录框。会加载评论。加载的代码在下面

目标 :用JS或者JQ 去除这些 加载的评论中 的a 的href 属性

尝试:试着在页面中添加了一些a标签,是可以去除href属性的。但是新加载的内容中的href去除不掉。

猜想:是否是由于延迟加载?

页面用的畅言插件代码如下:

<div class="bd-content">
<a id='xx' href='www.baidu.com'>经测试,这里的a href可以去除</a>
    <!--PC版-->
    <div id="SOHUCS" sid="1111"></div>
    <script charset="utf-8" type="text/javascript" src="https://changyan.sohu.com/upload/changyan.js" ></script>
    <script type="text/javascript">
        window.changyan.api.config({
            appid: 'XXXXX',
            conf: 'XXX'
        });
    </script>
</div>

加载后页面产生的评论代码如下:

 <a node-type="photo" href="javascript:;" title="硬汉Leon">  //下面片段中想要去除的a标签
 

就这里的href属性去除不掉。

 
完整版:
<div node-type="cmt-item" data-id="1312928178" data-user-id="168874727" data-platform-id="2" class="clear-g block-cont-gw">
<div class="cont-head-gw">
    <div class="head-img-gw">
                    <a node-type="photo" href="javascript:;" title="硬汉Leon">
            <div class="img-corner"></div>
            <img src="http://tp4.sinaimg.cn/2517194931/180/5698722607/1" width="42" height="42" alt="">
        </a>
    </div>
</div>
<div class="cont-msg-gw"><div node-type="prop-wrap" class="prop-wrap" style="height: 90px;">
<div class="prop-wrap-hidden" style="height: 90px;">
<span class="icon" style="left: 274px; top: 2px; background: url(&quot;http://0d077ef9e74d8.cdn.sohucs.com/pFSEmA0_png&quot;) no-repeat;"></span></div></div>
    <div class="msg-wrap-gw" style="margin-top: -90px;">
        <div class="wrap-user-gw global-clear-spacing">
                            <span class="user-time-gw">2017年2月28日 13:36</span>
            <span node-type="nickname" class="user-name-gw"><a href="javascript:void(0)">硬汉Leon</a></span>
                            
            <span class="user-address-gw">[<i>江苏省南京市</i>网友]</span>
                        </div>
        
        
        <div class="wrap-issue-gw">
            <p class="issue-wrap-gw"><span class="wrap-word-gw"><span title="发怒" class="face-item face_03"></span>1111</span></p>
            <div class="cy-see-more">
                <span></span><i></i>
            </div>
        </div>
        <!-- 图片展示 -->
        
        <div node-type="btns-bar" class="clear-g wrap-action-gw">
            <div node-type="action-click-gw" class="action-click-gw global-clear-spacing">
                <i class="gap-gw"></i>
                <span node-type="report" class="click-report-gw"><a href="javascript:void(0)"><i class="icon-gw icon-flag"></i><em>举报</em></a></span><i class="gap-gw"></i><span node-type="reply" class="click-reply-gw"><a href="javascript:void(0)">回复</a></span>
                <i class="gap-gw"></i>
                <span node-type="support" class="click-ding-gw">
                    <a href="javascript:;"><i class="icon-gw icon-ding-bg"></i><em class="icon-name-bg">1</em></a>
                </span>
                
                <i class="gap-gw"></i>
                <span node-type="oppose" class="click-cai-gw">
                    <a href="javascript:;"><i class="icon-gw icon-cai-bg"></i><em class="icon-name-bg"></em></a>
                </span>
                
            <i class="gap-gw"></i><span node-type="prop" class="click-prop-gw"><span class="prop-span"><a href="javascript:void(0)"></a></span></span></div>
            
        </div>
                </div>
</div></div>

不方便把conf 和appid 贴上来,抱歉

解决方案

因为你去除href的代码执行的时候,畅言的插件还没有加载完毕呢。所以肯定是去不掉的。
建议用settimeout隔断时间继续查找去除href

function removeHref(){
    // 去除href
    var isRemove=false;
    // 判断是否存在需要移除的a
    if(存在){
        // 执行移除href
        isRemove=true;
    }
    if(!isRemove){
        removeHref();
    }
}

setTimeout(removeHref,200)

这篇关于javascript - 去除a标签的href的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆