JS它DOM

JS它DOM

大家好,又见面了,我是全栈君,今天给大家准备了Idea注册码。

DOM:document object model。文档对象模型。它主要由许多节点。而基于JS对象的一切视角,DOM核心是节点对象和操作方法的属性。从下面三方面来介绍DOM。

一、节点查找与操作

     这部分表面看起来有些碎,但细细挖掘还是有非常大规律可循的。

见导图:

    JS它DOM

二、DOM之CSS样式

   对于这部分的内容,涉及到的也是CSS样式的获取和操作。

获取:

     1.行内:

	var box=document.getElementById('box');
	alert(box.style.width);

     2.rule获取

	var sheet=document.styleSheets[0];
		var rule=(sheet.cssRules|| sheet.rules)[0];
		alert(rule.style.width);

    3.计算获取  

	var style = window.getComputedStyle ?
	window.getComputedStyle(box, null) : null || box.currentStyle;//考虑各浏览器兼容  
	style.width; 
       style.height

操作:实现跨浏览器兼容操作

    1.插入

functioninsertRule(sheet,selectorText,cssText,position){
    if(sheet.insertRule){
      sheet.insertRule(selectorText+'{'+cssText+'}',position);                                                                     }else if(sheet.addRule){                                                                                                              sheet.addRule(selectorText,cssText,position);
}

   2.删除

function deleteRule(sheet,position){
 if (sheet.deleteRule){ //假设这样的方式存在
    sheet.deleteRule(position); //非IE
}else if(sheet.removeRule){
	sheet.removeRule(position);
}

   3.改动:通过赋值,来改动CSS样式

		window.onload=function(){
			//跨浏览器兼容rules
			var sheet=document.styleSheets[0];
			var rules=sheet.cssRules || sheet.rules;
			var rule1=rules[0];
			rule1.style.color='green'; //这样的能够在链接CSS样式中改动详细的属性
			var box=document.getElementById('box');
			box.style.color='blue'; //这样的方法改动的是行内样式
		}


小结:针对于CSS样式不管是属性获取还是对它操作。都能够分为三种情况行内,rule,和计算。而这三种仅仅有行内和rule操作为可读可写,计算样式仅仅供获取,不能进行改动。

三、元素尺寸和位置

   通过上述CSS样式的方式,我们也是能够获取DOM中各个元素的尺寸和位置的,但有一个弊端:当元素中存在pading,margin这些样式设计时,这些方法便不能获得一些元素真正的大小和位置。

JS中提供了专门儿用于获取元素尺寸和大小的方法。

实际大小:针对于元素的实际大小。主要与四个因素有关,padding。margin,border,scroll。而以下提供的几种方法,针对于不同的因素。会有不同的结果,仅依据需求使用就可以

   JS它DOM

周边大小:

 JS它DOM

    

 

   小结:DOM是JS学习的一个核心内容。当中涉及到的元素节点的属性和基本操作也是前台页面中最重要的组成,通过这些,才干使JS中基于对象的思想发挥作用。能够说,B/S UI页面中的一切都是建立在这些元素的基础之上的。


版权声明:本文博客原创文章,博客,未经同意,不得转载。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/117381.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Mac OSX下给树莓派安装Raspbian系统

    Mac OSX下给树莓派安装Raspbian系统

    2022年2月22日
    42
  • chrome webdriver下载_webdriver.chrome()

    chrome webdriver下载_webdriver.chrome()请对应自己的谷歌浏览器的版本下载chrome的webdriver:点击下载windows环境变量配置1、webdriver文件位置可以自定义位置,如:d:\selenium环境变量,的文件夹下也可以放在C:\ProgramFiles(x86)\Google\Chrome\Application的文件夹下2、系统环境变量PATH按照图的指示,1->2->3->…

    2022年9月19日
    0
  • ASP.NET中使用UpdatePanel实现局部异步刷新方法和攻略「建议收藏」

    ASP.NET中使用UpdatePanel实现局部异步刷新方法和攻略「建议收藏」转载自:ching126,http://blog.csdn.net/chenhongwu666/article/details/41392529asp.netUpdatePanel实现异步局部刷新如有雷同,不胜荣欣,若转载,请注明鉴于最近项目需要,研究了一下UpdatePanel控件的使用方法,现总结如下,可能有很多地方不足,还望大家斧正哦,此文的目的也是为了

    2022年7月23日
    17
  • 全国电信及网通 DNS 列表

    全国电信及网通 DNS 列表有很多在上网时出现,QQ可以上就是不能打开网页的情况,出现这种情况后PINGwww.baidu.com也无法Ping通,那应该是DNS出问题了,换一个就可以打开网页了。 下面是整理的一系列DNS列表先给大家两个开放式老外提供的的DNS吧谷歌::8.8.8.88.8.4.4 OpenDNS::208.67.222.222208.67.220.

    2022年5月22日
    37
  • 程序员外包公司到底值不值得去_百度外包岗位值不值得去

    程序员外包公司到底值不值得去_百度外包岗位值不值得去首先,我们来了解一下什么是外包?外包是指企业动态地配置自身和其他企业的功能和服务,并利用企业外部的资源为企业内部的生产和经营服务。现在很多大型公司为了节省成本,将一些内部工作外包给第三方公司来做,所以现在外包公司发展越来越兴。雇主公司会在什么情况下雇用外包人员呢?01、项目很急一般规模比较大或者流程很正规的公司,招聘和入职手续都比较繁琐。比如,通过正常途径招聘一个员工的时间大概需要1周-2周的时间,而且招聘进来之后,员工入职可能还需要等待2-3周时间;入职后,员工熟悉业务流程还需要一定的时间,

    2022年9月28日
    0
  • 正在准备配置请勿关闭计算机,正在准备配置windows请勿关闭计算机时间长了解决教程…

    正在准备配置请勿关闭计算机,正在准备配置windows请勿关闭计算机时间长了解决教程…当电脑出现正在准备配置windows请勿关闭计算机时,一般是您正对windows进行升级,但是这个要是长时间没有反应,我们不能再傻等下去了。可能是电脑出了别的问题了,来看看教程的说法。正在准备配置windows请勿关闭计算机时间长了方法一:强制重新启动电脑(长按电源键然后再按一下),然后会有好多项选择,第一项一般是“正常启动”最后一项是“最后一次正确配置”,选择“最后一次正确配置”(有的电脑可能提…

    2022年6月14日
    108

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号