`

JS小Demo: 点击Body 创建DIV, 点击DIV删除

阅读更多
给小朋友做的演示
三个兼容主流浏览器的公共方法
addEvent
removeEvent
stopEventPropagation


<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "  http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
<style type="text/css">
body{padding:0px;margin:0px;color:green;font-weight:bold;text-align: center;font-size:40px;}
div{ height:100px;width:100px;background:red;margin:5px 5px;float:left;_display:inline;}
</style>
<script type="text/javascript">
var index = 0;
function createDiv(){
	var div = document.createElement("div");
	var divData = document.createTextNode("");
	divData.nodeValue = index ++;
	div.appendChild(divData);
	
	addEvent(div, "click", function(e){
		document.body.removeChild(div);
		stopEventPropagation(e || event);
	});
	
	document.body.appendChild(div);
}

addEvent(document, 'click', createDiv);

function addEvent(elem, eventName, handler) {
  if (elem.attachEvent) {
    elem.attachEvent("on" + eventName, function(){
                    handler.call(elem)});
  } else if (elem.addEventListener) {
    elem.addEventListener(eventName, handler, false);
  }
}
function removeEvent(elem, eventName, handler) {
  if (elem.detachEvent) {
    elem.detachEvent("on" + eventName, function(){
                    handler.call(elem)});
  } else if (elem.removeEventListener) {
    elem.removeEventListener(eventName, handler, false);
  }
}
function stopEventPropagation(e){
	if(e.stopPropagation){
		e.stopPropagation();
	}else{
		e.cancelBubble=true;
	}
}
</script>
</head>
<body>
</body>
</html>
 
效果:


 
  • 大小: 52.8 KB
分享到:
评论

相关推荐

    Div 悬浮层 Demo

    为了让悬浮层有弹出动画,我们可以使用JavaScript或jQuery来监听页面事件,如滚动或点击,然后改变Div的类名,触发CSS的过渡效果。以下是一个简单的JavaScript示例: ```javascript document.addEventListener('...

    html+div+css的几个demo

    这个名为"html+div+css的几个demo"的压缩包文件集合,显然是为了展示如何利用这些技术来创建功能丰富的网页模板。接下来,我们将深入探讨每个知识点。 1. HTML(HyperText Markup Language):HTML是构建网页的基础...

    jQuery插件集之(弹出div2)+Demo

    总结起来,这个"jQuery插件集之(弹出div2)+Demo"提供了一种简单的方法来创建自定义的弹出div,避免了使用模态窗口带来的限制。通过结合HTML、CSS和jQuery,你可以轻松地在你的项目中实现这一功能,为用户提供更加...

    js 二维码 demo jquery.qrcode.js

    在IT行业中,JavaScript是一种广泛使用的前端编程语言,它在网页交互和动态功能实现上起着至关重要的作用。jQuery是一个高效、简洁的JavaScript库,它极大地简化了JavaScript的DOM操作、事件处理、动画制作以及Ajax...

    bootstrap-datetimepicker时间控件使用小demo

    以上代码创建了一个基本的Bootstrap-Datetimepicker时间控件DEMO,用户可以点击日历图标或者直接在输入框中输入日期和时间。`format`参数定义了日期和时间的显示格式,`locale`参数设置了中文语言,`sideBySide`参数...

    js div 锁屏

    &lt;title&gt;JS Div 锁屏DEMO #lockScreen { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.5); /* 可调整透明度 */ display: none; /* 默认隐藏 */ z-...

    jquery点击图片显示大图demo

    在点击事件中,我们需要获取到大图的URL,然后动态创建一个新的`&lt;img&gt;`元素或者修改已有的大图元素来显示高清图: ```javascript var largeImgUrl = $(this).attr('data-src'); var bigImg = $('大图"&gt;'); // ...

    JointJS HelloWorld Demo

    这是Demo的核心,包含了用JointJS创建图形的JavaScript代码。在这个文件中,开发者会定义图形的模型(如`joint.dia.Element`或`joint.dia.Link`),并使用JointJS API来添加、修改和操作这些图形。例如,你可以看到...

    flv.js和flv.min.js和基本使用demo(附带js文件)

    2. **准备容器**:创建一个HTML元素,如`&lt;div&gt;`,作为视频播放器的容器。 3. **初始化FLVPlayer**:使用JavaScript创建FLVPlayer实例,并传入容器元素的引用。 ```javascript var player = flvjs.create...

    fullpage简单实现Demo

    全屏滚动插件FullPage.js是一款广泛应用于网页设计中的JavaScript库,它允许开发者轻松创建具有全屏滚动效果的网站。这种效果通常被称为“单页应用”或“全屏滚动网站”,用户通过点击或滚动鼠标来浏览不同的页面...

    滚动条到底部弹出div

    在网页设计中,"滚动条到底部弹出div"是一种常见的交互效果,它通常用于实现无限滚动、加载更多内容或显示底部菜单等场景。这个功能是通过JavaScript和CSS结合实现的,下面我们将详细探讨如何实现这个效果。 首先,...

    js条形码二维码demo.rar

    本示例"js条形码二维码demo.rar"提供了一个基于JavaScript的解决方案,允许开发者在网页上动态创建这两种编码。下面我们将详细探讨这个Demo所涉及的技术和知识点。 首先,`jquery.qrcode.min.js`是一个jQuery插件,...

    HTML+JS+CSS实现魔塔50层demo

    在这个“HTML+JS+CSS实现魔塔50层demo”项目中,开发者利用这些技术创建了一个经典的像素风格游戏——魔塔的50层版本。下面我们将深入探讨这个项目中涉及到的关键知识点。 1. **HTML(HyperText Markup Language)*...

    html-demo:html-demo

    在`&lt;body&gt;`中,我们经常遇到各种元素,如`&lt;h1&gt;`到`&lt;h6&gt;`定义标题,`&lt;p&gt;`定义段落,`&lt;a&gt;`创建链接,`&lt;img&gt;`插入图像,`&lt;ul&gt;`和`&lt;li&gt;`创建无序列表,`&lt;ol&gt;`和`&lt;li&gt;`创建有序列表,以及`&lt;div&gt;`和`&lt;span&gt;`作为布局控制...

    网页楼层定位jq,js,demo.zip

    "网页楼层定位jq,js,demo.zip" 是一个包含示例代码的压缩包,它涉及到的主要技术是JavaScript(js)、jQuery(jq)以及可能的Bootstrap框架和CSS。下面我们将详细探讨这些技术在实现楼层定位中的应用。 1. **...

    HTML-Demo:html组的简单demo

    10. **JavaScript交互**:HTML页面与用户的交互通常依赖JavaScript,通过`&lt;script&gt;`标签引入JS代码或外部文件,实现动态效果和功能。 在这个“HTML-Demo”项目中,你可以期待找到以上知识点的实践示例,通过查看和...

    js-test-demo:使用mocha.js和jsdom进行JavaSript测试的一些简单演示

    JavaScript是Web开发中不可或缺的一部分,尤其在前端领域,它为创建动态、交互式的网页提供了强大的支持。为了确保代码的质量和可维护性,测试是至关重要的。`mocha.js` 和 `jsdom` 是两个非常流行的JavaScript测试...

    Dana-Demo:演示时间

    在Dana-Demo项目中,开发者可能使用了`&lt;header&gt;`和`&lt;footer&gt;`来定义页面的头部和尾部区域,`&lt;nav&gt;`用于创建导航菜单,`&lt;section&gt;`和`&lt;article&gt;`组织内容的逻辑块,`&lt;div&gt;`作为布局控制,`&lt;a&gt;`用于创建超链接,`&lt;img&gt;...

    HTML+JS实现贪吃蛇demo

    【HTML+JS实现贪吃蛇demo】是一个使用HTML和JavaScript技术构建的小型在线游戏,它重现了经典的“贪吃蛇”玩法。这个项目是初学者和有经验的开发者学习网页交互和JavaScript编程的一个好例子。下面我们将深入探讨...

    HtmlDemo:我的HtmlDemo

    `&lt;head&gt;`包含元数据(如标题、字符集等),而`&lt;body&gt;`则包含网页的实际内容。 2. **元素与标签**:HTML由一系列的元素组成,每个元素都由开始标签和结束标签构成,如`&lt;p&gt;`(段落)和`&lt;/p&gt;`。有些元素是自闭合的,...

Global site tag (gtag.js) - Google Analytics