JavaScript 实用工具库:DOM 操作、AJAX 与 Cookie 管理
作者:白露时间:2026-10-24 09:35:16浏览:502
本文提供了一套轻量级 JavaScript 工具库 LF,涵盖 DOM 元素获取、Flash 与图片广告插入、基于 XMLHttpRequest 的同步 AJAX 请求以及 Cookie 的读写删除功能。代码兼容旧版浏览器,包含 ActiveXObject 回退机制,适用于需要快速集成基础 Web 功能的场景。
JavaScript 基础 DOM 获取与页面元素插入
代码示例如下:
var LF = {};
LF.version = '1.0.0';
// 全局函数定义
function $(objName) {
return document.getElementById(objName);
}
function $name(objName) {
return document.getElementsByName(objName);
}
function $tag(objName) {
return document.getElementsByTagName(objName);
}
// 广告swf flashWrite('SW/2009/HomeGroBuy.swf','950','70','navigation', '##ffffff', 'menuNum=0', 'transparent');
function flashWrite(url,w,h,id,bg,vars,win){
var flashStr=
"<div align=\"center\"><object classid='clsid:d27cdb6e-ae6d-11cf-96b8-444553540000' codebase='http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0' width='"+w+"' height='"+h+"' id='"+id+"' align='middle'>"+
"<param name='allowScriptAccess' value='always' />"+
"<param name='movie' value='"+url+"' />"+
"<param name='FlashVars' value='"+vars+"' />"+
"<param name='wmode' value='"+win+"' />"+
"<param name='menu' value='false' />"+
"<param name='quality' value='high' />"+
"<param name='bgcolor' value='"+bg+"' />"+
"<embed src='"+url+"' FlashVars='"+vars+"' wmode='"+win+"' menu='false' quality='high' bgcolor='"+bg+"' width='"+w+"' height='"+h+"' name='"+id+"' align='middle' allowScriptAccess='always' type='application/x-shockwave-flash' pluginspage='http://www.macromedia.com/go/getflashplayer' />"+
"</object></div>";
document.write(flashStr);
}
// 广告图片 imgWrite('images/pic04.jpg', '780', '90', 'http://www.lfang.com/wzzt/2009/lgzt/');
function imgWrite(url,w,h,linkUrl){
var flashStr= "";
if (linkUrl=="")
flashStr="<img src=\""+url+"\" border=\"0\" width=\""+w+"\" height=\""+h+"\"/>";
else
flashStr="<a href=\""+linkUrl+"\">"+"<img src=\""+url+"\" border=\"0\" width=\""+w+"\" height=\""+h+"\"/>"+"</a>";
document.write(flashStr);
}
基于 XMLHttpRequest 的同步 AJAX 请求封装// AJAX 操作封装
LF.ajax={
getXmlhttp : function() {
var http_request;
if(window.XMLHttpRequest) {
http_request = new XMLHttpRequest();
if (http_request.overrideMimeType) {
http_request.overrideMimeType("text/xml");
}
}
else if (window.ActiveXObject) {
try {
http_request = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
http_request = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e) {}
}
}
if (!http_request) {
window.alert("can't create XMLHttpRequest object.");
return null;
}
return http_request;
},
loadAJAXTab : function (url){// 一般是DIV
try {
var xhttp=LF.ajax.getXmlhttp();
xhttp.open("GET",url,false);
xhttp.send(null);
if (xhttp.readyState == 0)return "0初始化中......";
if (xhttp.readyState == 1)return "1初始化中......";
if (xhttp.readyState == 2)return "2初始化中......";
if (xhttp.readyState == 3)return "3初始化中......";
if(xhttp.readyState == 4 && (xhttp.status==200)){
var resText=xhttp.responseText;
if (resText!="")return resText;
}
}catch (e) {
return e;
}
},
dataSubmit:function(url,urlParameter,method){ //ajax post提交数据
try{
if(method==""){method="POST";}
var xhttp=LF.ajax.getXmlhttp();
xhttp.open(method, url+urlParameter, false);
xhttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
xhttp.send(null);
if (xhttp.readyState == 0)return "0初始化中......";
if (xhttp.readyState == 1)return "1初始化中......";
if (xhttp.readyState == 2)return "2初始化中......";
if (xhttp.readyState == 3)return "3初始化中......";
if (xhttp.readyState == 4 && xhttp.status == 200)return xhttp.responseText;
}catch(e){
return e;
}
}
};
Cookie 读写删除与 HTML 转义工具函数// 工具函数
LF.util = {
setCookie:function (name,value){//写cookies
var Days = 30;
var exp = new Date();
exp.setTime(exp.getTime() + Days*24*60*60*1000);
document.cookie = name + "="+ escape (value) + ";expires=" + exp.toGMTString();
},
getCookie:function (name){//读取cookies
var arr,reg=new RegExp("(^| )"+name+"=([^;]*)(;|$)");
if(arr=document.cookie.match(reg)) return unescape(arr[2]);
else return null;
},
delCookie:function (name){//删除cookies
var exp = new Date();
exp.setTime(exp.getTime() - 1);
var cval=getCookie(name);
if(cval!=null) document.cookie= name + "="+cval+";expires="+exp.toGMTString();
},
escape:function (html) {//过滤html
html = html.replace(/&/g, "&");
html = html.replace(/</g, "<");
html = html.replace(/>/g, ">");
html = html.replace(/\xA0/g, " ");
html = html.replace(/\x20/g, " ");
return html;
}
}; 作者最新文章
AOS.js 动画不触发怎么办?排查 DOM 加载与移动端兼容问题
2026-11-05 17:02:26
sigma.js 怎么实现节点点击、拖拽与悬停提示交互
2026-11-05 15:03:27
Matter.js 与 PixiJS/Three.js 集成:分离物理计算与渲染
2026-11-05 13:43:48
主流JS弹幕库选型指南:Danmaku.js等库的功能与体积对比
2026-11-05 09:28:19
JavaScript点击事件监听与交互效果实例
2026-11-05 09:10:19
