js阻止冒泡
2013-11-22 16:03
148 查看
js阻止冒泡
(ev || event).cancelBubble = true;
标签切换
<script type="text/javascript">
window.onload = function () {
var oUl = document.getElementById('ul_menu');
var oLi = getByClass(oUl, 'item');
var sonUl = getByClass(oUl, 'son');
for (var i = 0; i < oLi.length; i++) {
oLi[i].index = i;
oLi[i].onclick = function (ev) {
for (var n = 0; n < oLi.length; n++) oLi
.className = "";
this.className = "current";
for (var n = 0; n < sonUl.length; n++) sonUl
.style.display = "none";
sonUl[this.index].style.display = "block";
(ev || event).cancelBubble = true;
}
}
document.onclick = function () {
for (var n = 0; n < oLi.length; n++) oLi
.className = "";
for (var n = 0; n < sonUl.length; n++) sonUl
.style.display = "none";
}
}
function getByClass(oParent, sClass) {
var aEle = oParent.getElementsByTagName('*');
var aResult = [];
var re = new RegExp('\\b' + sClass + '\\b', 'i');
var i = 0;
for (i = 0; i < aEle.length; i++) {
//if(aEle[i].className==sClass)
//if(aEle[i].className.search(sClass)!=-1)
if (re.test(aEle[i].className)) {
aResult.push(aEle[i]);
}
}
return aResult;
}
</script>
(ev || event).cancelBubble = true;
标签切换
<script type="text/javascript">
window.onload = function () {
var oUl = document.getElementById('ul_menu');
var oLi = getByClass(oUl, 'item');
var sonUl = getByClass(oUl, 'son');
for (var i = 0; i < oLi.length; i++) {
oLi[i].index = i;
oLi[i].onclick = function (ev) {
for (var n = 0; n < oLi.length; n++) oLi
.className = "";
this.className = "current";
for (var n = 0; n < sonUl.length; n++) sonUl
.style.display = "none";
sonUl[this.index].style.display = "block";
(ev || event).cancelBubble = true;
}
}
document.onclick = function () {
for (var n = 0; n < oLi.length; n++) oLi
.className = "";
for (var n = 0; n < sonUl.length; n++) sonUl
.style.display = "none";
}
}
function getByClass(oParent, sClass) {
var aEle = oParent.getElementsByTagName('*');
var aResult = [];
var re = new RegExp('\\b' + sClass + '\\b', 'i');
var i = 0;
for (i = 0; i < aEle.length; i++) {
//if(aEle[i].className==sClass)
//if(aEle[i].className.search(sClass)!=-1)
if (re.test(aEle[i].className)) {
aResult.push(aEle[i]);
}
}
return aResult;
}
</script>
相关文章推荐
- Js冒泡事件详解及阻止示例
- 用JS阻止事件冒泡
- JS实现阻止冒泡事件
- zepto.js中tap事件阻止冒泡的实现方法
- js 阻止冒泡
- JS:停止事件冒泡和阻止浏览器的默认行为 js/jquery/prototype
- js 阻止冒泡事件
- js 事件冒泡是什么如何用jquery阻止事件冒泡
- js利用事件的阻止冒泡实现点击空白模态框的隐藏
- JS阻止事件冒泡兼容各浏览器
- js利用事件的阻止冒泡实现点击空白模态框的隐藏
- js阻止事件冒泡
- 用JS阻止事件冒泡
- js添加事件、移除事件、阻止冒泡、阻止浏览器默认行为等写法(兼容IE/FF/CHROME)
- JS阻止冒泡事件和默认事件(IE和其他浏览器兼容)
- Js 冒泡事件阻止
- js阻止时间冒泡事件——event.stopPropagation()
- Js 冒泡事件阻止
- 原声js 的兼容(屏幕尺寸、事件处理程序、阻止事件冒泡、事件目标等等)
- js核心基础之Events事件机制(事件冒泡、事件捕获、事件执行顺序、阻止冒泡)