Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/465.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 JS获取所有可用标准HTML标记的列表_Javascript_Html - Fatal编程技术网

Javascript JS获取所有可用标准HTML标记的列表

Javascript JS获取所有可用标准HTML标记的列表,javascript,html,Javascript,Html,有没有办法让JS导出所有可能的标准HTML标记的列表 例如,如果我们想获得所有可用的样式属性,我们可以 var d = document.createElement('div'); for(var property in d.style) console.log(property); // would print out all properties; 但是我们想知道是否有一种方法可以获得所有可用的HTML标记 如果这样的事情不可能发生,有人知道我们在哪里可以得到这样一份清单吗?我们在逗号分隔

有没有办法让JS导出所有可能的标准HTML标记的列表

例如,如果我们想获得所有可用的样式属性,我们可以

var d = document.createElement('div');
for(var property in d.style) console.log(property); // would print out all properties;
但是我们想知道是否有一种方法可以获得所有可用的HTML标记

如果这样的事情不可能发生,有人知道我们在哪里可以得到这样一份清单吗?我们在逗号分隔的/json中都找不到它。。。我们找到的只是有参考资料的网站等等

  • 注意-我们不是在谈论
    document.querySelectorAll('*')
    ,它将为我们提供DOM中的所有元素。我们正在寻找所有可能的标准HTML标记
    • 没有“所有可能的”HTML标记列表,因为可能有无限多的HTML标记。有,其中列出了所有当前的标准HTML标记,但当然,您可以使用它们自己的标记创建

      出于好奇,我想看看从规范的网页上获取列表有多难。我想到了这个:

      [...document.querySelectorAll("th > code[id*='elements-3:'] > a")].map(a => a.textContent).join()
      
      所以,不难

      如果您从上面的链接打开规范后在控制台中运行,截至2018年10月撰写本文时,它将列出112个元素:

      a,abbr,address,area,article,aside,audio,b,base,bdi,bdo,blockquote,body,br,button,canvas,caption,cite,code,col,colgroup,data,datalist,dd,del,details,dfn,dialog,div,dl,dt,em,embed,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,head,header,hgroup,hr,html,i,iframe,img,input,ins,kbd,label,legend,li,link,main,map,mark,menu,meta,meter,nav,noscript,object,ol,optgroup,option,output,p,param,picture,pre,progress,q,rp,rt,ruby,s,samp,script,section,select,slot,small,source,span,strong,style,sub,summary,sup,table,tbody,td,template,textarea,tfoot,th,thead,time,title,tr,track,u,ul,var,video,wbr
      。作为控制台包装器{
      最大高度:100%!重要;
      }
      没有“所有可能的”HTML标记列表,因为可能有无限多的HTML标记。有,其中列出了所有当前的标准HTML标记,但当然,您可以使用它们自己的标记创建

      出于好奇,我想看看从规范的网页上获取列表有多难。我想到了这个:

      [...document.querySelectorAll("th > code[id*='elements-3:'] > a")].map(a => a.textContent).join()
      
      所以,不难

      如果您从上面的链接打开规范后在控制台中运行,截至2018年10月撰写本文时,它将列出112个元素:

      a,abbr,address,area,article,aside,audio,b,base,bdi,bdo,blockquote,body,br,button,canvas,caption,cite,code,col,colgroup,data,datalist,dd,del,details,dfn,dialog,div,dl,dt,em,embed,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,head,header,hgroup,hr,html,i,iframe,img,input,ins,kbd,label,legend,li,link,main,map,mark,menu,meta,meter,nav,noscript,object,ol,optgroup,option,output,p,param,picture,pre,progress,q,rp,rt,ruby,s,samp,script,section,select,slot,small,source,span,strong,style,sub,summary,sup,table,tbody,td,template,textarea,tfoot,th,thead,time,title,tr,track,u,ul,var,video,wbr
      。作为控制台包装器{
      最大高度:100%!重要;
      

      }
      有标准标签和非标准标签。想想XML结构(类似于HTML),它有无限多的可能标记。也许您希望列出DOM中存在的所有标记?然后
      elems=document.body.getElementsByTagName(“*”)
      您是否在寻找类似的东西:不,所有可能的HTML标记,而不是dompoint中的所有标记。请将代码放在您的控制台中,让我知道出现了什么。这比看起来更难。您是包含外来元素,还是只包含HTML命名空间中的元素?当浏览器可能有专门支持它们的实现代码时,是否包含过时的元素?WHATWG生活标准中的
      -标准,但在W3C HTML5规范中已经过时了吗?有标准标签和非标准标签。想想XML结构(类似于HTML),它有无限多的可能标记。也许您希望列出DOM中存在的所有标记?然后
      elems=document.body.getElementsByTagName(“*”)
      您是否在寻找类似的东西:不,所有可能的HTML标记,而不是dompoint中的所有标记。请将代码放在您的控制台中,让我知道出现了什么。这比看起来更难。您是包含外来元素,还是只包含HTML命名空间中的元素?当浏览器可能有专门支持它们的实现代码时,是否包含过时的元素?WHATWG生活标准中的
      -标准,但在W3C HTML5规范中已经过时了?我已经更新了这个问题,我需要一个简单的逗号分隔列表,但找不到它。。。无论如何,感谢“所有的HTML元素构造函数”-尽管它们与HTML元素的比例不是1:1。当我运行该代码时,我得到了
      表节
      ,但是没有
      ,我没有得到
      代码
      ,但是
      是一个元素。(还有很多其他的例子,我刚刚抓住了我想到的第一个假阳性和假阴性)@Quentin-我想你会发现最新的更新(带有
      querySelectorAll
      )很有趣。:-)“a、缩写、地址、区域、文章、旁白、音频、b、基、bdi、bdo、块引号、正文、br、按钮、画布、标题、引用、代码、列、列组、数据、数据列表、dd、del、细节、dfn、对话框、div、dl、dt、em、嵌入、字段集、figcaption、图形、页脚、表单、h1、h2、h3、h4、h5、h6、标题、页眉、页眉、hgroup、hr、html、i、iframe、img、输入、ins、kbd、标签、图例、li、链接、main、地图、标记、菜单、元导航表、nosccript,object,ol,opt,output,p,param,picture,pre,progress,q,rp,rt,ruby,s,samp,script,section,select,slot,small,source,span,strong,style,sub,summary,sup,table,tbody,td,template,textarea,tfoot,th,thead,time,title,tr,track,u,ul,var,video,wbr“谢谢你的支持,如果你能投票的话,所以这不去了drainI已经更新了问题,我需要一个简单的逗号分隔的列表,但找不到它。。。无论如何,感谢“所有的HTML元素构造函数”-尽管它们与HTML元素的比例不是1:1。当我运行该代码时,我得到了
      表节
      ,但是没有
      ,我没有得到
      代码
      ,但是
      是一个元素。(还有很多其他的例子,我刚刚抓住了我想到的第一个假阳性和假阴性)@Quentin-我想你会发现最新的更新(带有
      querySelectorAll
      )很有趣。:-)“a、缩写、地址、区域、文章、旁白、音频、b、基、bdi、bdo、块引号、正文、br、按钮、画布、标题、引用、代码、列、列组、数据、数据列表、dd、del、细节、dfn、对话框、div、dl、dt、em、嵌入、字段集、figcaption、图形、页脚、表单、h1、h2、h3、h4、h5、h6、标题、页眉、页眉、hgroup、hr、html、i、iframe、img、输入、ins、kbd、标签、图例、li、链接、main、地图、标记、菜单、元导航表、nosccript、object、ol、optgroup、option、output、p、param、picture、pre、progress、q、rp、rt、ruby、s、samp、script、section、select、slot、small、source、span、strong、style、sub、summary、sup、table、tbody、td、template、textare、tfoot、th、thead、time、title、tr、track、u、ul、var、video、wbr“谢谢您的支持,请您对此进行投票,这样就不会白费了。”