账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    JavaScript 动态生成 css选择器路径?
    53
    0

    1.业务场景
    我要手动触发一个任意dom的click 然后生成样式层级如下:


    html结构:

    <html>
        <body>
            <h3>标题</h3>
            <ul>
                <li></li>
                <li></li>
            </ul>
            <ul>
                <li></li>
                <li>这里触发点击事件</li>
            </ul>
            <ul>
                <li></li>
                <li></li>
            </ul>
        </body>
    </html>

    期望结果:

    html>body>ul:eq(1)>li:eq(1)

    下面是我写的js 目前只实现了层级,获取不到第几个元素 求助:

    var getClassName = function(event, name) {
      if (event.parentNode && event.parentNode.tagName) {
        return getClassName (
          event.parentNode,
          event.tagName + ">" + (name || "")
        );
      } else {
        return name;
      }
    }
    
    document.addEventListener("click",function(event){
        console.log(getClassName (event.target));
    })
        
    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 在JavaScript中,你可以使用以下方法动态生成CSS选择器路径:

      ```javascript function generateCSSPath(path) { return path.split(' ')[0]; }

      // 使用示例 let selector = generateCSSPath('#myClass'); console.log(selector); // 输出:#myClass ```

      在这个例子中,generateCSSPath函数接受一个CSS选择器路径作为参数,然后返回该路径的第一个字符。这个字符就是动态生成的CSS选择器路径。

      例如,如果你有一个CSS选择器路径#myClass .myClass-classgenerateCSSPath函数会返回#myClass。如果你有一个CSS选择器路径#myClass .myClass-class .myClass-classgenerateCSSPath函数会返回#myClass

      注意,这个方法只会生成静态的CSS选择器路径。如果你想生成动态的CSS选择器路径,你可能需要使用一些CSS解析库,如CSSOM或RegExParser。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部