Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/82.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用所有类的列表时删除特定DIV的css_Javascript_Jquery_Html_Css - Fatal编程技术网

Javascript 使用所有类的列表时删除特定DIV的css

Javascript 使用所有类的列表时删除特定DIV的css,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我从stackoverflow中找到以下代码: <script type="text/javascript"> var allTags = document.body.getElementsByTagName('*'); var classNames = {}; for (var tg = 0; tg< allTags.length; tg++) { var tag = allTags[tg]; if (tag.className) { var cla

我从stackoverflow中找到以下代码:

<script type="text/javascript">
var allTags = document.body.getElementsByTagName('*');
var classNames = {};
for (var tg = 0; tg< allTags.length; tg++) {
    var tag = allTags[tg];
    if (tag.className) {
     var classes = tag.className.split(" ");
     for (var cn = 0; cn < classes.length; cn++){
     var cName = classes[cn];
     if (! classNames[cName]) 
         {
       classNames[cName] = true;
     }
   }
    }   
}
var classList = [];
for (var name in classNames) 
    classList.push(name+'<br />');
document.getElementById('allclasses').innerHTML = classList.sort();
</script>

var allTags=document.body.getElementsByTagName('*');
var classNames={};
对于(var tg=0;tg');
document.getElementById('allclasses').innerHTML=classList.sort();
上面的方法非常好,但仅仅是针对课堂,ID呢 现在有一个场景是这样使用div的:

<div class="head">
   internal divs having classes, IDs should be ignored --
</div> 

<div class="footer">
   internal divs having classes, IDs should be ignored --
</div> 

应忽略具有类、ID的内部div--
应忽略具有类、ID的内部div--

我在问如何对代码进行上述更改,因为我对Javascript很笨,我需要让它作为给定的任务工作。

假设您只需要一个列表,如果ID(如类列表)有jQuery版本,则需要一个列表

JSFiddle: jQuery中的ID版本:

var ids = {};
$('[id]').each(function () {
    var id = this.id;
    ids[id] = id;
});
var idList = [];
for (var id in ids) {
    idList.push(id + '<br />');
}
$('#allids').html(idList.sort());

你想要一个jQuery解决方案(短得多),还是说
jQuery
标记一个意外事件?如果jQuery是一个解决方案,我想知道是的,它检查所有具有关联类的html元素,并将它们添加到一种列表中,你也想要一个id列表?我不确定我是否理解你的问题。谢谢@TrueBlueAusie,但是如果我不需要在搜索的ID和类中包含页眉和页脚,那么代码的第二部分呢,就像上面的问题
内部div中包含的类,应该忽略ID——内部div有类,应该忽略ID——
@奇偶算法:即使有你的新评论,我仍然不理解问题的这一部分。你能用另一种方式解释吗?可能有一个预期结果的示例?看起来您只是希望jQuery
text()
方法获取内部文本?你想提取什么?我不想包括head和footer div以及其中的任何内容,这是很简单的all@odd_even_algorithm:添加了适当的筛选器并尝试解释其工作方式。
var ids = {};
$('[id]:not([class=header]):not([class=footer]):not([class=header] *):not([class=footer] *)').each(function () {
    var id = this.id;
    ids[id] = id;
});
var idList = [];
for (var id in ids) {
    idList.push(id + ' <br/>');
}
$('#allids ').html(idList.sort());