按照我的问题here,我一直试图用Javascript编写类似的代码,以检测嵌套CSS类的文本中出现的一系列Unicode字符。到目前为止,我能够使它适用于DIV类,例如:

$(document).ready(function() {
    $('h2.ClassName').each(function(index, DOMElement){
        if(/[\uE000-\uF8FF]+/.test($(DOMElement).text())) {
            $(this).removeClass('ClassName').addClass('CSS-ClassName');
        }
    })
});


但是,类似的Javascript不适用于以下类:

<ul>
    <h4 class="ClassName">Text</h4>
    <li class="ClassName">Text</li>
<ul>


任何想法?

的确感谢

问候,

一世。

最佳答案

如果希望jQuery使用相同的ClassName查找其他元素,则需要将它们添加到选择器中,如下所示:

$(document).ready(function() {
    $('h2.ClassName, h4.ClassName, li.ClassName').each(function(index, DOMElement){
        if(/[\uE000-\uF8FF]+/.test($(DOMElement).text())) {
            $(this).removeClass('ClassName').addClass('CSS-ClassName');
        }
    })
});


如果要真正通用,并使用ClassName更改所有元素,则可以将选择器更改为:

/* ... */
$('.ClassName').each(); /* ... you get the idea ... */
/* ... */


希望能有所帮助。

08-19 09:45