innerHTML添加了脚本

时间:2017-03-29 19:17:00

标签: javascript

我有以下代码:

<div id="test"></div>
<script type="text/javascript">
$(document).ready(function checker () {
    if(window.location.href.indexOf("project") > -1) {
        document.getElementById('test').innerHTML = "CONTAINS KEYWORD";
    } else {
        document.getElementById('test').innerHTML = 'no keyword';
    }
    setInterval(checker,1000);
});
</script>

这将检查URL是否包含单词&#34; project&#34;如果是,则显示&#34;包含关键字&#34;。如果没有显示&#34;没有关键字&#34;。它还会每秒检查一次。

问题是我需要更换&#34; CONTAINS KEYWORD&#34;用:

 <tr>
  <td  align="right"><a onClick="javascript:addURL(this);" href="https://www.facebook.com/sharer.php?src=sp&u=" target="new"><img src="http://example.co.uk/planner-files/facebook.png"></a></td>
  <td  align="left"><a onClick="javascript:addURL(this);" href="https://twitter.com/intent/tweet?text=Check out my kitchen design http://example.co.uk/planner-files/kitchen-share.jpg&hashtags=example&url="  target="_blank"><img src="http://example.co.uk/planner-files/twitter.png"></a></td>
</tr>

我已经习惯了你要添加的地方,例如a /之前&#34;等等,但我不知道如何解决这个问题。

有什么想法吗?如果可能,请提供示例。

1 个答案:

答案 0 :(得分:0)

您可以更轻松地切换所需标记的可见性,而不是在每次评估条件时都将其呈现。

我创建了一个默认隐藏的类:

<style type="text/css">.hidden{ display: none; }</style>

然后您需要做的就是在测试div中添加或删除该类:

var testDiv = document.getElementById('test');
var hasProjectInURL = location.href.indexOf('project') > -1;
testDiv.className = hasProjectInURL ? '' : 'hidden';