幽灵学院 - 菜鸟起航从这里开始!

幽灵学院 - 中国最权威的网络安全门户网站!

当前位置: > 编程 > Web开发 > JavaScript >

JS验证控件1.2 新增提示框

[javascript]// JavaScript Documentif (typeof (HTMLElement) != undefined) { HTMLElement.prototype.insertAdjacentElement = function(where, parsedNode) { switch (where) { case bef...

[javascript] 
// JavaScript Document 
if (typeof (HTMLElement) != "undefined") { 
    HTMLElement.prototype.insertAdjacentElement = function(where, parsedNode) { 
        switch (where) { 
            case "beforeBegin": 
                this.parentNode.insertBefore(parsedNode, this); 
                break; 
            case "afterBegin": 
                this.insertBefore(parsedNode, this.firstChild); 
                break; 
            case "beforeEnd": 
                this.appendChild(parsedNode); 
                break; 
            case "afterEnd": 
                if (this.nextSibling) 
                    this.parentNode.insertBefore(parsedNode, this.nextSibling); 
                else 
                    this.parentNode.appendChild(parsedNode); 
                break; 
        } 
    } 
    HTMLElement.prototype.insertAdjacentHTML = function(where, htmlStr) { 
        var r = this.ownerDocument.createRange(); 
        r.setStartBefore(this); 
        var parsedHTML = r.createContextualFragment(htmlStr); 
        this.insertAdjacentElement(where, parsedHTML); 
    } 
    HTMLElement.prototype.insertAdjacentText = function(where, txtStr) { 
        var parsedText = document.createTextNode(txtStr); 
        this.insertAdjacentElement(where, parsedText); 
    } 

 
 
function addEvent(element, type, handler) { 
    //为每一个事件处理函数分派一个唯一的ID 
    if (!handler.$$guid) handler.$$guid = addEvent.guid++; 
    //为元素的事件类型创建一个哈希表 
    if (!element.events) element.events = {}; 
    //为每一个"元素/事件"对创建一个事件处理程序的哈希表 
    var handlers = element.events[type]; 
    if (!handlers) { 
        handlers = element.events[type] = {}; 
        //存储存在的事件处理函数(如果有) 
        if (element["on" + type]) { 
            handlers[0] = element["on" + type]; 
        } 
    } 
    //将事件处理函数存入哈希表 
    handlers[handler.$$guid] = handler; 
    //指派一个全局的事件处理函数来做所有的工作 
    element["on" + type] = handleEvent; 
}; 
//用来创建唯一的ID的计数器 
addEvent.guid = 1; 
function removeEvent(element, type, handler) { 
    //从哈希表中删除事件处理函数  
    if (element.events && element.events[type]) { 
        delete element.events[type][handler.$$guid]; 
    } 
}; 
function handleEvent(event) { 
    var returnValue = true; 
    //抓获事件对象(IE使用全局事件对象) 
    event = event || fixEvent(window.event); 
    //取得事件处理函数的哈希表的引用 
    var handlers = this.events[event.type]; 
    //执行每一个处理函数 
    for (var i in handlers) { 
        this.$$handleEvent = handlers[i]; 
        if (this.$$handleEvent(event) === false) { 
            returnValue = false; 
        } 
    } 
    return returnValue; 
}; 
//为IE的事件对象添加一些“缺失的”函数 
function fixEvent(event) { 
    //添加标准的W3C方法 
    event.preventDefault = fixEvent.preventDefault; 
    event.stopPropagation = fixEvent.stopPropagation; 
    return event; 
}; 
fixEvent.preventDefault = function() { 
    this.returnValue = false; 
}; 
fixEvent.stopPropagation = function() { 
    this.cancelBubble = true; 
}; 

 

(责任编辑:幽灵学院)
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
用户名: 验证码: 点击我更换图片
栏目列表
推荐内容
1700055555@qq.com 工作日:9:00-21:00
周 六:9:00-18:00
  扫一扫关注幽灵学院