//凡是html标签中的属性和值是一样的,那么在js中用true或者false

1,阅读协议倒计时

<input type="button" name="name" value="请仔细阅读协议(5)" disabled="disabled" id="btn" />

<script type="text/javascript">
window.onload = function () {
var btnObj = document.getElementById('btn');
var sec = 5;
var setId = setInterval(function () {
sec = sec - 1;
if (sec <= 0) { btnObj.value = '同意';
clearInterval(setId); //清除计时器
btnObj.disabled = false;
} else {
btnObj.value = '请仔细阅读协议(' + sec + ')';
}
}, 1000);
};

2,事件冒泡

window.event.cancelBubble = true; //阻止事件冒泡.

    <script type="text/javascript">

        //冒泡排序,--元素中有元素(元素的嵌套如果触发了里面元素的事件,那么外面元素的事件也会被触发)(事件是相同的事件)

        //阻止事件冒泡
window.onload = function () { document.getElementById('dv').onclick = function () { alert(this.id);
//alert(window.event.srcElement.id);//事件源的id
};
document.getElementById('p1').onclick = function () { alert(this.id);
};
document.getElementById('sp').onclick = function () { alert(this.id);
window.event.cancelBubble = true; //阻止事件冒泡.
//return false;//没有阻止事件冒泡
};
}; </script>

3,dom动态创建元素

 <script type="text/javascript">

        window.onload = function () {

            //获取按钮添加点击事件
document.getElementById('btn').onclick = function () { //创建一个层的对象
var dvObj = document.createElement('div'); dvObj.style.width = '300px';
dvObj.style.height = '200px';
dvObj.style.backgroundColor = 'yellow'; //把层添加到body中
document.body.appendChild(dvObj); };
};
</script>

4,将创建的元素添加到现有元素中

var i = 0;
document.getElementById('btnc').onclick = function () {
i++;
//创建一个input标签
var inputObj = document.createElement('input');
inputObj.type = 'button';
inputObj.value = '我骄傲' + i;
//document.getElementById('dv').appendChild(inputObj);
document.getElementById('dv').insertBefore(inputObj, document.getElementById('dv').firstChild);
};

5,简单无刷新评论

  <table border="1" id="tb">
<tr>
<td>猫猫
</td>
<td>
我好困
</td>
</tr>
</table>
昵称: <input type="text" name="name" value="" id="txt" />
<br />
<textarea rows="10" clos="10" id="txtContent"></textarea>
<br />
<input type="button" name="name" value="提交" id="btn" />
 <script type="text/javascript">

        window.onload = function () {

            document.getElementById('btn').onclick = function () {

                //获取昵称
var name = document.getElementById('txt').value; //获取内容
var txtCt = document.getElementById('txtContent').value;
//获取页面的表格
var tbObj = document.getElementById('tb');
//创建行
var trObj = document.createElement('tr');
//创建单元格
var td1 = document.createElement('td');
var td2 = document.createElement('td');
td1.innerText = name;
td2.innerText = txtCt;
//把单元格添加到行中
trObj.appendChild(td1);
trObj.appendChild(td2);
//行添加到表中
tbObj.appendChild(trObj); };
}; </script>

6,创建表格方式

   <script type="text/javascript">
window.onload = function () { document.getElementById('btn').onclick = function () { var tb = document.createElement('table');
var dic = { "百度": "http://www.baidu.com", "传智播客": "http://www.itcast.cn", "谷歌": "http://www.google.com" }; for (var key in dic) {
//创建行,根据表创建行
var trObj = tb.insertRow(-1);
//创建单元格,根据行创建单元格 var td1 = trObj.insertCell(-1);
td1.innerText = key;
//创建单元格
var td2 = trObj.insertCell(-1);
td2.innerHTML = '<a href="' + dic[key] + '">' + key + '</a>'; }
//表格添加到body中
document.body.appendChild(tb); };
}; </script>

7,为元素添加样式

   <script type="text/javascript">
window.onload = function () { document.getElementById('btn').onclick = function () {
document.getElementById('dv').className = 'cls'; };
}; </script>

8,文本框焦点事件(onfocus与onblur)

  //创建三个输入文本框,当光标离开文本框的时候如果文本框为空,则将文本框背景色设置为红色,如果不为空则为白色。提示:焦点进入控件的事件是onfocus,焦点离开控件的事件是onblur。
window.onload=function(){
//获取所有的文本框
var txts = document.getElementsByTagName('input');
for (var i = 0; i < txts.length; i++) {
txts[i].onblur = function () {
if (this.value.length == 0) {
this.style.backgroundColor = 'red';
}
else {
this.style.backgroundColor = '';//恢复默认颜色
}
}; //注册失去焦点事件
}
};

9,★☆评分控件

    <script type="text/javascript">

        window.onload = function () {

            var tds = document.getElementById('tb').getElementsByTagName('td');

            for (var i = 0; i < tds.length; i++) {
tds[i].onmouseover = function () {//注册一个鼠标进入的事件
for (var j = 0; j < tds.length; j++) {
//this.innerText = '★';
tds[j].innerText = '★';
if (tds[j] == this) {
break;
} }
};
tds[i].onmouseout = function () { for (var i = 0; i < tds.length; i++) {
tds[i].innerText = '☆';
}
};
}
}; </script>

10,点击按钮,表格隔行变色

 <script type="text/javascript">
//点击按钮,表格隔行变色:偶数行为黄色背景,奇数行为默认颜色。通过table的getElementsByTagName取得所有的tr,依次遍历,如果是偶数就…………。
window.onload = function () { document.getElementById('btn').onclick = function () {
var trs = document.getElementById('tb').getElementsByTagName('tr');
for (var i = 0; i < trs.length; i++) {
if (i % 2 != 0) {
trs[i].style.backgroundColor = 'yellow';
} else {
trs[i].style.backgroundColor = '';
}
}
};
}; </script>

11,鼠标放到超链接上,显示图片(层)

    <script  type="text/javascript">
window.onload = function () {
//获取超链接, //为超链接注册一个事件--鼠标进入事件
document.getElementById('ak').onmouseover = function () {
if (!document.getElementById('imxy')) {
//创建一个图片
var im = document.createElement('img');
im.id = 'imxy';
im.src = 'xy.JPG';
//图片要脱离文档流
im.style.position = 'absolute';
//超链接距离左边距离
var x = this.offsetLeft + 'px';
//超链接距离上面加上超链接高度距离
var y = this.offsetTop + this.offsetHeight + 'px';
//图片添加到body中
document.body.appendChild(im);
}
};
//鼠标离开
document.getElementById('ak').onmouseout = function () {
if (document.getElementById('imxy')) {
document.body.removeChild(document.getElementById('imxy'));
}
};
}
</script>

12,让图片跟随图片

    <script type="text/javascript">

        window.onload = function () {

            document.onmousemove = function () {

                // alert('让你动');

                var imObj = document.getElementById('im');
imObj.style.position = 'absolute';
imObj.style.left = window.event.clientX + 'px';
imObj.style.top = window.event.clientY + 'px';
//给鼠标加样式
document.body.style.cursor = 'url(dinosau2.ani)'; };
}; </script>

13,正则表达式

 var msg = '中国移动:10086,中国联通:10010,中国电信:10000';
var reg=/\d+/g;//全局
var result;
while ((result = reg.exec(msg)) != null) {
alert(result);
}

14,js匹配邮箱

document.getElementById('txt').onblur = function () {

                var email = this.value; //获取邮箱
var regObj = /^\w+@\w+\.+\w+$/;
alert( regObj.test(email)?'是邮箱':'不是邮箱');
};

15,电话号码指定位置换星号

<script type="text/javascript">

        var msg = '杨小舅:13888888888张三:13999999999小李子:13111111111';

        // /\d{3}\d{4}\d{4}/;
var result= msg.replace(/(\d{3})(\d{4})(\d{4})/g,'$1****$3');
alert(result);
</script>

16,切除字符串两端空格

<script type="text/javascript">

        var msg = '    天气还可以    ';
function trimString(txt) {
//先切左边再切右边-(query中1.8.3文件中是前面的方式)---可以左边右边一起切
return txt.replace(/^\s+/,'').replace(/\s+$/,'');
}

dom例子的更多相关文章

  1. DOM例子小结(一)

    一.点击按钮切换图片 核心思路: 1.首先获取元素 2.为元素添加点击事件 3.当事件被触发时运行代码 <!DOCTYPE html> <html lang="en&quo ...

  2. angularJS 指令解释

    本文引自 http://blog.csdn.net/kongjiea/article/details/49840035 指令,很重要 AngularJS与jQuery最大的区别在哪里?我认为,表现在数 ...

  3. vue-awesome-swiper中的数据异步加载

    <template> <div> //第一个轮播 加了v-if 判断,可以实现 loop 轮循 <swiper v-if="gglist.length>1 ...

  4. javascript dom追加内容的例子

    javascript dom追加内容的使用还是比较广泛的,在本文将为大家介绍下具体的使用方法. 例子: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML ...

  5. js基础例子dom+原型+oop基础知识记录01

    //oo:概念是计算机中对于现实世界的理解和抽象的方法 //由计算机利用编程技术发展到现在的产物 //面向对象几要素 //对象:由属性和方法组成的集合 //属性:保存数据,存储在对象内存空间中的唯一的 ...

  6. 自学XML DOM的几个例子

    XML DOM定义了如何获取.修改.添加和删除XML文件中结点的接口,极大方便了开发者对XML文件的使用.XML DOM教程和手册请转:http://www.w3school.com.cn/xmldo ...

  7. js DOM操作---登录例子总结

    简单的总结下用 javascript DOM 实现简易登录框例子,下面是简单的模拟登录,没有具体的登录样子,但只是模拟,整理下思路. 页面简单布局,我这个确实太简单了,看代码: <body> ...

  8. DOM编程艺术章12:一个简单的Ajax例子

    大概入了JavaScript的门,现在要回过头恶补Ajax和json了,随手翻到dom编程艺术发现有一个适合回忆的例子,先抄录下来,引入对Ajax作用的大概印象,再去掰开了研究. <!DOCTY ...

  9. dom4j的测试例子和源码详解(重点对比和DOM、SAX的区别)

    目录 简介 DOM.SAX.JAXP和DOM4J xerces解释器 SAX DOM JAXP DOM解析器 获取SAX解析器 DOM4j 项目环境 工程环境 创建项目 引入依赖 使用例子--生成xm ...

随机推荐

  1. 性能优化-列表类型转换(ConvertList<TSource, TResult>)

    之前,在项目中看到过一段通用列表类型转换的代码,直接的实现便是用反射.大概看了下,它用在领域模型转DTO和SOA接口中契约实体的转换等等.首先,它使用了反射,其次,还是在循环中使用,便有了优化的想法. ...

  2. Mysql常见问题及优化

    本文将就以下三个问题进行展开: 1.库表设计 2.慢 SQL 问题 3.误操作.程序 bug 时怎么办 一.库表设计 1.1 引擎选择 在 mysql 5.1 中,引入了新的插件式存储引擎体系结构,允 ...

  3. 【腾讯优测干货分享】如何降低App的待机内存(五)——优化dex相关内存及本章总结

    本文来自于腾讯优测公众号(wxutest),未经作者同意,请勿转载,原文地址:http://mp.weixin.qq.com/s/01Abwe0p1h3WLh28Tzg_Dw 1.5案例:优化dex相 ...

  4. [置顶] linux 解压版安装

    1:下载mysql解压版包去官网下载www.mysq.com 下载.下载linux通用版本就好了 2.基本配置 首先,我们准备好Linux环境,我们使用CentOS 5.8进行试验安装.第一步,我们需 ...

  5. Hdu 2473(并查集删除操作) Junk-Mail Filter

    有木有非常吊 加强 加强版   啊  ,看了都不敢做了   .后来先做了食物链这个我还是看过的.但还是A不掉,没明确神魔意思 .总而言之.大牛的博客是个好东西.我就那么看了一下,还是不懂怎莫办啊,哎, ...

  6. Linux新手入门:通过chmod改变文件权限--转

    前面介绍过在Linux中如何查看文件的属性,在Linux文件权限详解中我们介绍了Linux文件的三种身份和四种权限,三种身份分别为: u:文件的拥有者 g:文件所属的群组 o:其他用户 对于每个身份, ...

  7. 操作系统-mac安装linux(Ubuntu)

    mac安装linux 安装linux,分为两步: 1. 制作linux启动U盘 2. 通过启动U盘,安装Ubuntu系统 Mac OS X下创建USB启动盘 格式化USB驱动盘 下载Ubuntu桌面版 ...

  8. RPM vs SRPM

    RPM 全名是『 RedHat Package Manager 』简称则为 RPM 啦!顾名思义,当初这个软件管理的机制是由 Red Hat 这家公司发展出来的. RPM 是以一种数据库记录的方式来将 ...

  9. Android(java)学习笔记139:在TextView组件中利用Html插入文字或图片

    首先我们看看代码: 1.activity_main.xml: <LinearLayout xmlns:android="http://schemas.android.com/apk/r ...

  10. 简单的实现QQ通信功能(四)

    第四部分:主界面的设计及代码 一:效果图及界面设计 1. 效果图: 2. 界面设计: (1)上面显示自己信息用一个PictureBox和两个Label,用来显示自己的头像和昵称备注名. (2)下面用了 ...