051、如何打印当前浏览器的版本等信息
 
navigator.userAgent
 
返回包含浏览器版本等信息的字符串 ,常用于判断浏览器版本及使用设备(PC或者移动端
 
052 、在浏览器地址栏输入www.baidu.com后按下回车键会发生什么
 
1.域名解析
      把域名解析ip地址   DNS域名解析系统
 
    2.把ip发送到网络供应商  去找那个对应的主机服务器
 
    3.TCP的三次握手 建立连接
 
    4.开始发送请求 取回入口文件index.html
 
    5.开始解析入口文件,并且取回需要的资源sources
 
    6.进行
 
053、window.onload与window.onscroll的区别
 
window.onload:当页面加载完成的时候
 
window.onscroll:当页面滚动的时候
 
054、请简述下关于DOM的增、删、查
 
增---------createElement
var oDiv = document.createElement('div');
document.body.appendChild(oDiv);//只有追加后,页面上才会出现
 
2、删---------removeChild
语法:fatherObj.removeChild(childrenObj)
 
参数解释:
a、fatherObj:要删除子元素的元素对象
b、childrenObj:要被删除的子元素对象
 
3、查---------六种
document.getElementById('');常用
 
document.getElementsByClassName('');(ie9+)常用
 
document.getElementsByTagName('');常用
 
document.getElementsByName('');不常用
 
document.querySelector(选择器)(IE8+)(IE8+)
     根据选择器返回匹配到的第一个元素
 
document.querySelectorAll(选择器);(IE8+)常用
     根据选择器返回匹配到的所有的元素
 
055、请简述下关于Dom节点的分类
 
childNodes:获取所有节点 包括文本节点
 
节点分为3种类型:
 
1、元素节点 <span></span>
 
2、文本节点 <span>xxx</span>
 
3、属性节点 <span id ='xxx'></span>
 
可以通过nodeType这个属性查看节点的类型
nodeType == 1 元素
 
nodeType == 2 属性
 
nodeType == 3 文本节点
 
056、获取非行间样式
 
function getStyle(obj,attr){
     if(obj.currentStyle){
          return obj.currentStyle[attr];
     }else{
         return getComputedStyle(obj,false)[attr]; 
     }
}
 
057、如何获取、设置、删除自定义属性
 
 
 元素.getAttribute(属性名);
 
 元素.setAttribute(属性名,属性值);
 
元素.removeAttribute(属性名);
 
058、innerHTML、innerText和outerHTML、outerText的区别(了解一下 背会就行不需要抄写)
 
- innerHTML 设置或获取位于对象起始和结束标签内的 HTML
 
- outerHTML 设置或获取对象及其内容的 HTML 形式
 
- innerText 设置或获取位于对象起始和结束标签内的文本
 
- outerText 设置(包括标签)或获取(不包括标签)对象的文本
 
innerText和outerText在获取时是相同效果,但在设置时,innerText仅设置标签内的文本,而outerText设置包括标签在内的文本。
 
不同之处:
   简单的说innerHTML和outerHTML、innerText与outerText的不同之处在于:
  1)、innerHTML与outerHTML在设置对象的内容时包含的HTML会被解析,而innerText与outerText则不会。
  2)、在设置时,innerHTML与innerText仅设置标签内的文本,而outerHTML与outerText设置包括标签在内的文本。
   3)、outhtml innerText(非W3C)
 
059、如何进行DOM节点筛选
 
1、可以通过nodeType
1 代表元素节点   2 代表属性节点 3 代表文本节点
 
function getNode(ele){
     var aNode = ele.childNodes;
     var newArr = [];
     for(var i=0;i<aNode.length;i++){
          if(aNode[i].nodeType == 1){
              newArr.push(aNode[i]) 
          }
     }
     return newArr;
}
 
 
060、 childNodes与children、attributes 的区别
 
如果想获取到子元素的element节点,最好使用children方法,childNodes方法以及firstChild方法在现代浏览器中使用,都会把元素标签中的空白节点检测出来,一般我们使用这两个方法都是为了获取到元素的元素节点,空白节点会给我们造成很多不必要的bug,而children方法则是只检测element元素节点
 
attributes:获取当前元素节点的所有属性节点集合

原生js大总结六的更多相关文章

  1. 原生js大总结九

    81.ES6的Symbol的作用是什么?   ES6引入了一种新的原始数据类型Symbol,表示独一无二的值   82.ES6中字符串和数组新增了那些方法   字符串       1.字符串模板    ...

  2. 原生js大总结十

    91.ajax的优点     a.提高运行效率   b.提高用户体验,让多件事情同时发生   c.在不刷新页面的情况下可以对局部数据进行加载和刷新       92.ajax请求的流程   1.创建通 ...

  3. 原生js大总结二

    011.if语句的优化   1.把次数多的条件和执行结果放到最前面   2.减少第一次无用的判断,可以用嵌套判断   3.判断语句禁止出现三次嵌套     012.谈谈你对switch的理解   1. ...

  4. 原生js大总结十一

    101.请简述prototype.__proto__ constructor三者的关系   1.prototype:     每一个函数都有一个prototype这个属性,而这个属性指向一个对象,这个 ...

  5. 原生js大总结八

    071.如何组织事件冒泡   利用事件对象属性:stopPropagation 和 cancelBubble   stopPropagetion是一个方法:e.stopPropagetion();   ...

  6. 原生js大总结七

    061.如何获取父级节点.上一个子级节点.下一个子级节点    nextElementSibling  后一个兄弟元素  (如果没有是null)    previousElementSibling   ...

  7. 原生js大总结四

    031.数组常用的一些方法   1.push: 在数组最后添加一个或者多个元素,返回添加后数组的长度   2.pop: 从数组最后取出一个元素,返回的是数组的最后一个元素(取出的元素)   3.uns ...

  8. 原生js大总结五

    041.在js中如何用方法将10进制的字符转换成16进制和8进制   数字.toString(16) 数字.toString(8)     042.如何创建时间对象   new Date()   04 ...

  9. 原生js大总结三

    021.定义函数的几种方式   1.关键字函数:function fnName(){};   2.字面量函数:var fn = function(){};   3.构造函数:var fn = new ...

随机推荐

  1. 2008R2域控环境中 应用组策略 实现禁用USB设备使用

    本文介绍如何在Windows Server 2008 AD中禁用客户端USB端口.本文使用的系统:Windows Server 2008 R2 企业版.域功能级别:Windows Server 200 ...

  2. 添加 validate 验证规则

    上篇文章链接:http://blog.csdn.net/chenmoimg_/article/details/71191476 修改 msg.js $.extend($.validator.messa ...

  3. HDU 4431 Mahjong 模拟

    http://acm.hdu.edu.cn/showproblem.php?pid=4431 不能说是水题了,具体实现还是很恶心的...几乎优化到哭但是DFS(还加了几个剪枝)还是不行...搜索一直T ...

  4. Flex之文件目录浏览器实例

    Flex之文件目录浏览器实例 Flex的AIR项目 <?xml version="1.0" encoding="utf-8"?> <mx:Wi ...

  5. JavaScript笔记(6)

    一.Date Date实例用来处理日期和时间.Date对象基于1970年1月1日(格林威治时间)世界标准时间起经过的毫秒数.常用:new Date();new Date(value);new Date ...

  6. Vim插件使用技巧(转)

    在 IDEA Intellij小技巧和插件 一文中简单介绍了一下IdeaVim插件.在这里详细总结一下这个插件在日常编程中的一些常用小技巧.供有兴趣使用这个插件,但对Vim还不十分熟悉的朋友参考.当然 ...

  7. [DLX反复覆盖] hdu 2828 Lamp

    题意: 有N个灯M个开关 每一个灯的ON和OFF状态都能控制一个灯是否亮 给出N行,代表对于每一个灯 哪些开关的哪个状态能够使得第i个灯亮 思路: 这里须要注意一个问题 假设开关1的ON 状态和开关2 ...

  8. vim 基础学习之插入模式

    插入模式1.字符编码,插入特殊字符 <C-v>{3位} 如,你想输入A,你可以在输入模式下<C-v>065(必须是3位) <C-v>u{4位} 如,你想输入¿,你可 ...

  9. ctags 寻找方法定义处

    ctags这个是vim的一个插件,它可以用来生成一个检索文件,里面保存有一些索引信息.例如,一些类跟方法.变量等的定义位置当我们对一个路径执行ctags -R的时候,就会自动生成一个ctags,然后我 ...

  10. 【2017 Multi-University Training Contest - Team 5】Rikka with Subset

    [Link]: [Description] 给你a数组的n个数的所有2^n个子集的2^n个子集元素的和; 子集元素的和最大为m; 告诉你各个子集元素的和出现的次数; 如 1 2 则0出现1次,1出现1 ...