有条件的innerhtml改变

时间:2013-08-12 11:10:48

标签: javascript html dom opera

假设我有一个像这样的HTML结构:

<li id="jkl">                                 
  <div class="aa">                         
    <div class="bb">                                 
      <div class="cc">                                                 
        <div class="dd">                             
          <a ...><strong>                            
              <!-- google_ad_section_start(weight=ignore) -->Test                             
              <!-- google_ad_section_end --></strong></a>
        </div>                                     
      </div>                                           
    </div>                         
    <div class="ee">                                                         
      <div class="ff">                                                      
        <div class="gg"> 
          <div class="excludethis">                          
            <a...>Peter</a>                                                 
          </div>                      
        </div>                                           
      </div>                           
    </div>                   
  </div>                
</li>   

我的目标是将<li id="jkl">的内容(innerhtml)设置为'{'如果在<li id="jkl">内有单词列表中的任何单词(在下面的示例中为Wortliste),除非他们在<div class="excludethis">

换句话说,在检查过程中忽略<div class="excludethis">并显示html,即使<div class="excludethis">内有单词列表中的一个或多个单词。

要改变什么?

我目前的方法(不检查<div class="excludethis">

Wortliste=['Test','Whatever'];

TagListe=document.selectNodes("//li[starts-with(@id,'jk')]");
for (var Durchgehen=TagListe.length-1; Durchgehen>=0; Durchgehen--) 
{
    if (IstVorhanden(TagListe[Durchgehen].innerHTML, Wortliste)) 
    {
        TagListe[Durchgehen].innerHTML = '';
    }
}

function IstVorhanden(TagListeElement, Wortliste) 
{
    for(var Durchgehen = Wortliste.length - 1; Durchgehen>=0; Durchgehen--) 
    {
        if(TagListeElement.indexOf(Wortliste[Durchgehen]) != -1) 
        return true;
    }
    return false;
}   

只需要在opera中工作,因为它是一个用户脚本。

0 个答案:

没有答案