【问题标题】:extract classes/ids from html pages从 html 页面中提取类/ID
【发布时间】:2012-08-01 10:16:09
【问题描述】:

我需要为现有的 html 页面创建一个 css 样式表。是否有任何简单的方法可以使用脚本提取所有类和 id...我熟悉 python、java、c、javascript 和 php。这些语言有图书馆吗?对我来说似乎有点矫枉过正。感谢您的帮助。

干杯!

【问题讨论】:

    标签: css dom html-parsing


    【解决方案1】:

    检索每个元素的ids 的最简单方法是简单地遍历具有id 的元素,然后检索它:

    var idEls = document.querySelectorAll('*[id]'),
        ids = [];
    
    for (var i=0, len=idEls.length; i<len; i++){
        ids.push(idEls[i].id);
    }
    

    覆盖那些不实现querySelectorAll() 的浏览器的一种方法是创建一个 每个 元素的 nodeList,然后迭代该(可能非常大)nodeList,测试@987654325 @ 并且,如果存在,则将其推送到数组中:

    var els = document.getElementsByTagName('*'),
        ids = [];
    
    for (var i=0, len=els.length; i<len; i++){
        if (els[i].id){
            ids.push(els[i].id);
        }
    }
    

    【讨论】:

      【解决方案2】:

      使用 jquery,遍历元素并获取 id 和 class

      $('html *').each(function(){
        console.log($(this).attr('id'), $(this).attr('class'))
      })
      

      【讨论】:

      • 如果您使用的是 jQuery,那么简单地检索那些以id 开头的元素会不会更容易:$('*[id]').each(/*...*/)
      • 如果你也想找到带有类的元素,也许像 $('*[id], *[class]') 这样的东西会更好:)
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-07-10
      • 2016-03-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多