JS文件写法操作,DOM基本操作
js文件写法、规范
// 定义全局变量
var num = 0;//这个是用来记数的。
// 页面加载完成
window.onload = funtion(){
intVar();//初始化变量
scrollFun();//滚动监听
。。。。
}
// 定义方法
funtion initVar(){}
funtion scrollFun(){}
dom操作
dom 操作页面上的标签
js的组成:ECMAscript(核心语法)
BOM 浏览器对象模型
windows 窗口
location 地址栏
history 历史记录
document 文档 html文件
DOM 文档对象模型
<script>
//打开关闭窗口
// windows.open("打开文件名";"打开文件位置");
// windows.close属性();
//修改地址栏
// location.href;在本页面跳转
// location.href="网页地址";则跳转到网页地址上。
// location.reload();刷新
// location.replace();
//定时器
// 延迟执行
// var setTimeoutObj setTimeout(funtion(){
// alert(123);
// });
// 间隔执行
// setInterval(funtion(){
// console.log(123);
// },3000); 以毫秒为单位。
// 停止定时器
// clearTimeout(setTimeoutObj);
// clearTimeout(setin);
// 间隔打印三次停止
// var intv setInterval(funtion(){
// sum++;
// console.log(123);
// if (sum >= 3) {
// clearTimeout(intv);
// }
// },1000);
// 动态时钟
// var str = "";
// setInterval(funtion(){
// str = "";
// var tt = new Date(),
// y = tt.getFullYear(),
// M = +tt.getMouth()+ 1 ,
// d = tt.getDate(),
// h = tt.getHours(),
// m = tt.getMinutes(),
// s = tt.getSecounds();
// var str = y + '-'+ M + '-' + d + '' + h + ':' + m + ':' + s;
// document.getElemntsByTagName('div')[0].innerHTML = str;
// document.write(str);
// },1000);
//滚动监听
// var flag = true;
// window.onscroll= function(){
// //变量t是滚动条滚动时,距离顶部的距离
// var t = document.documentElement.scrollTop||document.body.scrollTop;
// if(t = 100 && flag == true){
// flag = false;
// alert(123);
// }
// }
// 页面加载完成。
// 很重要,!将全部页面加载完成!!!
window.onload = funtion(){ }
dom 文档对象模型 body :
何时找 何时操作 找到标签,操作标签
找到标签:
document.getElementById("btn");
document.getElementsByName("btn"); 通过name属性
document.getElementsByTagName("btn"); 通过标签
document.getElementsByClassName("btn"); 通过class属性
了解:结合嵌套来找。
操作js对象
内容
非表单元素:obj.innerHTML obj.innerHTML = 123;
表单元素: obj.value obj.value = 123;
样式
obj.style.color obj.style.color = red;
这个操作只能操作行内样式
background-color 变成 backgroundColor 去掉“-” 开头字母大写
属性 obj
obj.setAttribute('class','dd ff');//覆盖性设置属性
obj.getAttribute('class','dd');//获取属性
obj.removeAttribute('class');//删除属性
事件
不同地方
方式一:
onclick 属性
方式二:js中定义
obj.onclick = function(){}
//写在在Evt事件内
//此处function无实际意义,语法如此。只是说明这里是个方法调用。
方式三:
obj.addEventistener('click',f1); //this 写在行内
obj.addEventistener('click',f1);
obj.removeEventistener('click');
创建删除
// 节点操作
// var btnDom = document.getElementById("btn").getElementsByTagName('span');
// var btnsDom = document.getElementsByTagName("btn");
// console.log(btnDom.firstElementChlid);
//根据ID 查找控件
// var dombtn = document.getElementById('btn');
// alert(dombtn);
//根据标签名,查找
// var dombtn = document.getElementsByTagName("button");
// console.log(dombtn); //找出来的东西叫集合,类似是数组
// for (var i in dombtn) { //用for in 遍历的时候全出来了
// if (!isNaN(i)){ // 需要判断非数字的跳过
// continue;
// }
// console.log(dombtn[i]);
// }
// console.log('-----------------');
//for(var i =0;i<//btnDom.length;i++){ //这种遍历不用判断
//console.log(btnDom[i]);
// }
JS文件写法操作,DOM基本操作的更多相关文章
- 原生JS和jQuery操作DOM的区别小结
一.Js原生对象和jQuery实例对象的相互转化: (1).原生JS对象转JQ对象: $(DOM对象); (2). JQ对象转原生JS对象: $(DOM对象).get(index); //注意区分eq ...
- classList详解,让你的js方便地操作DOM类
在此之前,jQuery的hasClass.addClass.removeClass我们已经再熟悉不过了,然而我们并不会在每一个项目中都会去使用 jQuery或者Zepto,譬如在移动端的网页中,考虑到 ...
- JS错误写法[清除DOM]
前言 我现在总结一下我之前敲代码犯的错误,清除DOM元素,我们开始写代码吧! HTML <h1 style="font-size: 18px;font-weight: bold;col ...
- 原生JS与jQuery操作DOM对比
一.创建元素节点 1.1 原生JS创建元素节点 document.createElement("p"); 1.2 jQuery创建元素节点 $('<p></p&g ...
- js,ts操作dom总结
以上面为例: js获取placeholder节点 : document.getElementsByClassName("newTicket")[0].getAttributeNod ...
- HTML(.js) – 最简单的方式操作 DOM 的 JS 库
HTML(.js) 是一个轻量的(压缩后~2kb) JavaScript 库,简化了与 DOM 交互的方法. 这个 JavaScript 库的方法可读性很好,并具有搜索和遍历 DOM 的方法.相比 j ...
- JavaScript的8行代码搞定js文件引入问题
单页面的操作,免不了会有各种jsp的嵌套问题,一个操作页面里面可能涉及到几十甚至上百个jsp页面. 平常我们对用到的js文件的引入,都会放到index的header里面.如图: 但是,让我们思考三个问 ...
- 吉特仓储管系统(开源)--使用Grunt压缩JS文件
在吉特仓储管理系统开发的过程中大量使用到了JS,随着JS文件的增多我们需要对JS进行有效的管理,同时也要对JS文件进行一些压缩.文本用于记录一下使用grunt压缩JS的操作步骤,便于遗忘之后记录查找, ...
- javascript 文件的操作
js 文件的操作(ActiveXObject仅支持IE) 一.参数解释: 1. filename: filename //文件路径 2.iomode: var forReading=1;只读var f ...
随机推荐
- jquery运用FormData结合Ajax异步上传表单,超实用
首先创建一个formData,其中参数,就是你的form表单,jquery要加0,也可以用document.querySelector("form")得到 var formData ...
- 微信小程序 fixed 解决 textarea 的 placeholder 不固定问题
当我们把 textarea 放到一个 position:fixed; 中的元素中时. 会发现这个 textarea 也会跟着固定位置,但是 textarea 的 placeholder 内容不会固定, ...
- java中String常量的存储原理
相关题目(运行结果在代码注释后面) 1. package StringTest; public class test1 { public static void main(String[] args) ...
- macOS 版微信小助手,支持微信多开、防撤回、远程控制mac、自动回复等等
微信小助手 GitHub大牛提供的微信小助手是一款插件,该插件具备多开.防撤回.免手机认证登录.自动回复.远程控制自己的 macOS.群发等众多功能 GitHub网址:https://github.c ...
- 使用charles模拟慢速网络
1.设置慢速网络 点击导航栏的proxy---throttle setting来设置想要的网络情况, 其中有两种方法: (1)勾选Enable Throttling,在Throttle presett ...
- 使用springmvc进行文件的上传和下载
文件的上传 SpringMVC支持文件上传组件,commons-fileupload,commons-fileupload依赖commons-io组件 配置步骤说明 第一步:导入包 commons-f ...
- 【VIM】-NO.140.VIM.1 -【VIM】
Style:Mac Series:Java Since:2018-09-10 End:2018-09-10 Total Hours:1 Degree Of Diffculty:5 Degree Of ...
- 【HBase】-NO.140.HBase.1 -【HBase】
Style:Mac Series:Java Since:2018-09-10 End:2018-09-10 Total Hours:1 Degree Of Diffculty:5 Degree Of ...
- 70个Python练手项目列表(都有完整教程)
前言: 不管学习那门语言都希望能做出实际的东西来,这个实际的东西当然就是项目啦,不用多说大家都知道学编程语言一定要做项目才行. 这里整理了70个Python实战项目列表,都有完整且详细的教程,你可以从 ...
- spring boot集成redis实现session共享
1.pom文件依赖 <!--spring boot 与redis应用基本环境配置 --> <dependency> <groupId>org.springframe ...