【问题标题】:Target elements in Dom matching with Classes present in ArrayDom 中的目标元素与 Array 中存在的类匹配
【发布时间】:2021-11-30 01:28:52
【问题描述】:

我有一个类数组,它是一个动态数组,可以有 n 个这样的类名。

let arr = ['Product', 'year', 'role'];

然后我在这样的父 div 中有很多带有这些类的元素。

<div class="parent">
    <div class="year"></div>
    <div class="abc"></div>
    <div class="Product"></div>
    <div class="diffClass"></div>
    <div class="role"></div>
    <div></div>
</div>

现在在这个结构中,我只需要在 div 上添加页面加载时活动的类,该类是数组中存在的类。 我试图映射数组但没有表来获取与 Arrays 类匹配的 div 提前致谢。

【问题讨论】:

    标签: javascript jquery arrays


    【解决方案1】:

    您可以使用, 选择“或”类,例如

    $(".product,.year,.role")
    

    如果其中任何一个匹配,将选择
    (相反,要使它们全部匹配,请使用.product.year.role - 这不是这里的要求)

    要将数组转换为字符串,请使用arr.join,给出:

    let arr = ['Product', 'year', 'role'];
    
    $("." + arr.join(",.")).addClass("active");
    .active { color: red; }
    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
    <div class="parent">
        <div class="year">year</div>
        <div class="abc">abc</div>
        <div class="Product">Product</div>
        <div class="diffClass">diffClass</div>
        <div class="role">role</div>
        <div></div>
    </div>

    【讨论】:

    • 它适用于类,同样感谢,但是如果我需要做同样的事情而不是类而是属性,假设有一个属性名称关系 =“产品”或任何东西else from Array,如何定位呢?
    • $("[realated='product']","[realated='year']","[realated='role']") 这是我现在需要的,抱歉需求变化
    • 确保选择器是单个字符串,否则,是的:$("[related='product'][related='year'],[related='role']")
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-04-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多