什么是web标准?WEB标准不是某个标准,而是一系列标准的集合。一个网页主要由三部分组成:Structure、Presentation和Behavior。相应的标准也分为三个方面:结构标准语言主要包括XHTML和XML,性能标准语言主要包括CSS,行为标准主要包括对象模型(如W3CDOM)、ECMAScript等。这些标准由W3C起草发布,也有一些是其他标准组织制定的标准,如ECMA(欧洲计算机制造商协会)的ECMAScript标准。请解释一下DOCTYPE的作用,DOCTYPE和没有DOCTYPE有什么区别?声明位于HTML文档的第一行,在标记之前。告诉浏览器的解析器使用什么文档标准来解析这个文档。DOCTYPE缺失或格式错误会导致文档以兼容模式呈现。XHTML和HTML有什么区别?XHTML元素必须正确嵌套。XHTML元素必须是封闭的。标记名称必须为小写字母。XHTML文档必须有一个根元素。严格模式与混杂模式——如何触发两者以及区分它们的意义。当浏览器制造商着手创建符合标准的浏览器时,他们希望确保向后兼容性。为此,他们创建了两种渲染模式:标准和混杂。在标准模式下,浏览器根据规范呈现页面;在混杂模式下,页面以更宽松的向后兼容方式显示。混杂模式通常模仿旧浏览器的行为以防止旧站点工作。浏览器根据DOCTYPE的存在与否以及使用的DTD选择使用哪种呈现方法。如果XHTML文档包含格式正确的DOCTYPE,它通常以标准模式呈现。对于HTML4.01文档,包含严格DTD的DOCTYPE通常会导致页面以标准模式呈现。包含过渡DTD和URI的DOCTYPE也会导致页面以标准模式呈现,但是具有不带URI的过渡DTD会导致页面以混杂模式呈现。缺少或格式不正确的DOCTYPE将导致HTML和XHTML文档以混杂模式呈现。根据有无DOCTYPE来选择呈现方式,称为DOCTYPE切换或DOCTYPE检测。DOCTYPE切换是浏览器用来区分遗留文档和符合标准的文档的方式。无论您是否编写了有效的CSS,如果您选择了错误的DOCTYPE,页面将以混杂模式呈现,其行为可能是错误的或不可预测的。所以一定要在每个页面上包含格式正确的DOCTYPE声明,并在使用HTML时选择严格的DTD。使用this写3个典型应用(1)在html元素事件属性中使用,如:(2)构造函数functionAnimal(name,color){ this.name=name; this.color=color;}(3)输入点击获取值(4)apply()/call()来查找数组的最大值varnumbers=[5,458,120,-215];varmaxInNumbers=Math.max.apply(this,numbers);控制台.log(maxInNumbers);//458varmaxInNumbers=Math.max.call(this,5,458,120,-215);控制台日志(maxInNumbers);//458数组去重//方法一varnorepeat=funtion(arr){returnarr.filter(function(val,index,array){returnarray.indexOf(val)===index;});}norepeat()//方法二varset=newSet(arr);Arraysumvarsum=function(arr){returnarr.reduce(function(x,y){returnx+y});}sum()如何显示/隐藏DOM元素?迪如何在splayvisibilityOpacityJavaScript中检测变量是String类型?functionisString(str){return(typeofstr=="string"||str.constructor==String);}在网页中实现一个倒计时程序,计算一年还剩多少时间,要求实时网页上动态显示“××”年剩××日××时××分××秒”functioncounter(){vardate=newDate();varyear=date.getFullYear();vardate2=newDate(年,12,31,23,59,59);/*转换为秒*/vartime=(date2-date)/1000;varday=Math.floor(time/(24*60*60))varhour=Math.floor(time%(24*60*60)/(60*60))varminute=Math.floor(时间%(24*60*60)%(60*60)/60);varsecond=数学。地板(时间%(24*60*60)%(60*60)%60);varstr=year+"yearleft"+day+"day"+hour+"hour"+minute+"minute"+second+"second";console.log(str);}window.setInterval("counter()",1000);补充代码,鼠标点击Button1后,将Button1移动到Button2的后面。
<scripttype="text/javascript">functionmoveBtn(obj){varclone=obj.cloneNode(true);varparent=obj.parentNode;parent.appendChild(clone);parent.removeChild(obj);如何在JavaScript中克隆对象方法1:functiondeepClone(obj){varstr=JSON.sringify(obj);varnewobj=JSON.parse(str);返回新对象;}方法2://深度克隆函数deepClone(obj){if(!obj){returnobj;}varo=objinstanceof数组?[]:{};for(varkinobj){if(obj.hasOwnProperty(k)){o[k]=typeofobj[k]===“对象”?deepClone(obj[k]):obj[k];}}returno;}用鼠标点击页面上的任意标签,提示标签名称。(注意兼容性)请编写一个JavaScript函数parseQueryString,其作用是将URL参数解析成一个对象varurl="http://witmax.cn/index.php?key0=0&key1=1&key2=2";functionparseQueryString(argu){varstr=argu.split('?')[1];变量结果={};vartemp=str.split('&');for(vari=0;i
这是第一篇这是第二篇这是第三篇(functionA(){varindex=0;varul=document.getElementById("test");varobj={};for(vari=0,l=ul.childNodes.length;i