几个关于HTML的js方法

简介:
//加入收藏
function addBookmark(title) {
	 var url=parent.location.href;
	 if (window.sidebar) { 
			window.sidebar.addPanel(title, url,""); 
	 } else if( document.all ) {
	 	window.external.AddFavorite( url, title);
	 } else if( window.opera && window.print ) {
	 	return true;
	 }
}
//设置首页
function setHome(obj,vrl){
	try{
		obj.style.behavior='url(#default#homepage)';obj.setHomePage(vrl);
	} catch(e){
		if(window.netscape) {
				try {
					netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");  
				} catch (e)  { 
					alert("抱歉!您的浏览器不支持直接设为首页。请在浏览器地址栏输入“about:config”并回车然后将[signed.applets.codebase_principal_support]设置为“true”,点击“加入收藏”后忽略安全提示,即可设置成功。");  
				}
				var prefs = Components.classes['@mozilla.org/preferences-service;1'].getService(Components.interfaces.nsIPrefBranch);
				prefs.setCharPref('browser.startup.homepage',vrl);
		 }
	}
}

var MY=new Object(); 
//Cookie读取函数
MY.Cookie = {
	set:function(name,value,expires,path,domain) {
		if(typeof expires=="undefined") {
			expires=new Date(new Date().getTime()+24*3600*1000);
		}
		document.cookie=name+"="+decodeURI(value)+((expires)?"; expires="+expires.toGMTString():"")+((path)?"; path="+path:"; path=/")+((domain)?";domain="+domain:"");
	},
	get:function(name) {
		var arr=document.cookie.match(new RegExp("(^| )"+name+"=([^;]*)(;|$)"));
		if(arr!=null) {
			return decodeURIComponent(arr[2]);
		}
		return null;
	},
	clear:function(name,path,domain) {
		if(this.get(name)) {
			document.cookie=name+"="+((path)?"; path="+path:"; path=/")+((domain)?"; domain="+domain:"")+";expires=Fri, 02-Jan-1970 00:00:00 GMT";
		}
	}
}; 

//限制图片尺寸
function limitImage(ImgD, areaWidth, areaHeight){   
	 var flag=false;
	 if (!areaWidth) {
	 	areaWidth = 600;  //图片区域的宽度。 
	 }
	 if (!areaWidth) {
	 	areaHeight = 450; //图片区域的高度。  
	 }
     var image = new Image();
	 try {
		 image.src = ImgD.src;   
		 if(image.width>0 && image.height>0){   
			 flag=true;   
			 if(image.width/image.height>= areaWidth/areaHeight){   
				 if(image.width>areaWidth) {   
					ImgD.width=areaWidth;   
					 ImgD.height=(image.height*areaWidth)/image.width;   
				 } else {   
					 ImgD.width=image.width;   
					 ImgD.height=image.height;   
				 }
			 } else {   
				 if(image.height>areaHeight){   
					 ImgD.height=areaHeight;   
					 ImgD.width=(image.width*areaHeight)/image.height;   
				 } else {   
					 ImgD.width=image.width;   
					 ImgD.height=image.height;   
				 }
			 }   
		 }  
	 } catch (e) {
		//nothing
	 }
 }
 
//带参数的 复制到剪切板
function copyCodes(ele){
    if(copy2Clipboard(ele)!=false){ 
        alert("生成的代码已经复制到粘贴板,你可以使用Ctrl+V 贴到需要的地方去了哦! "); 
    } 
}
 

//复制到剪切板
function copyCode(){
	var testCode = "";
	testCode += document.title + '  ' + this.location.href; 
    if(copy2Clipboard(testCode)!=false){ 
        alert("生成的代码已经复制到粘贴板,你可以使用Ctrl+V 贴到需要的地方去了哦! "); 
    } 
} 
copy2Clipboard=function(txt){ 
    if(window.clipboardData){ 
        window.clipboardData.clearData(); 
        window.clipboardData.setData("Text",txt); 
    } 
    else if(navigator.userAgent.indexOf("Opera")!=-1){ 
        window.location=txt; 
    } 
    else if(window.netscape){ 
        try{ 
            netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect"); 
        } 
        catch(e){ 
            alert("您的firefox安全限制限制您进行剪贴板操作,请打开'about:config'将signed.applets.codebase_principal_support'设置为true'之后重试,相对路径为firefox根目录/greprefs/all.js"); 
            return false; 
        } 
        var clip=Components.classes['@mozilla.org/widget/clipboard;1'].createInstance(Components.interfaces.nsIClipboard); 
        if(!clip)return; 
        var trans=Components.classes['@mozilla.org/widget/transferable;1'].createInstance(Components.interfaces.nsITransferable); 
        if(!trans)return; 
        trans.addDataFlavor('text/unicode'); 
        var str=new Object(); 
        var len=new Object(); 
        var str=Components.classes["@mozilla.org/supports-string;1"].createInstance(Components.interfaces.nsISupportsString); 
        var copytext=txt;str.data=copytext; 
        trans.setTransferData("text/unicode",str,copytext.length*2); 
        var clipid=Components.interfaces.nsIClipboard; 
        if(!clip)return false; 
        clip.setData(trans,null,clipid.kGlobalClipboard); 
    } 
}

/**
 * 获取url地址参数
 */
function getUrlParam(paramName) {
	var returnVal="";
	try{
		var paramUrl=window.location.search;
		//处理长度
		if (paramUrl.length>0) {
			paramUrl = paramUrl.substring(1, paramUrl.length);
			var paramUrlArray = paramUrl.split("&");
			for (var i=0; i<paramUrlArray.length; i++) {
				if (paramUrlArray[i].toLowerCase().indexOf(paramName.toLowerCase())!=-1) {
					var temp=paramUrlArray[i].split("=");
					if(temp[0].toLowerCase()==paramName.toLowerCase()) {
						returnVal=temp[1];
						break;
					}
				}
			}
		}
		returnVal = decodeURIComponent(returnVal);
	} catch(e) {
		//nothing
	};
	return returnVal;
}

//渠道来源记录
try {
	if (getUrlParam('utm_source')!="" && getUrlParam('utm_medium')!="") {
		MY.Cookie.set('utm_tag', getUrlParam('utm_source') + '|' + getUrlParam('utm_medium') + '|' + getUrlParam('utm_place'), new Date(new Date().getTime()+1*24*3600*1000), '/', 'game.10086.cn');
	}
} catch(e) {
	//nothing
}

目录
相关文章
|
24天前
|
Web App开发 JavaScript 前端开发
如何确保 Math 对象的方法在不同的 JavaScript 环境中具有一致的精度?
【10月更文挑战第29天】通过遵循标准和最佳实践、采用固定精度计算、进行全面的测试与验证、避免隐式类型转换以及持续关注和更新等方法,可以在很大程度上确保Math对象的方法在不同的JavaScript环境中具有一致的精度,从而提高代码的可靠性和可移植性。
|
9天前
|
监控 JavaScript Java
Node.js中内存泄漏的检测方法
检测内存泄漏需要综合运用多种方法,并结合实际的应用场景和代码特点进行分析。及时发现和解决内存泄漏问题,可以提高应用的稳定性和性能,避免潜在的风险和故障。同时,不断学习和掌握内存管理的知识,也是有效预防内存泄漏的重要途径。
105 52
|
23天前
|
JavaScript 前端开发 索引
js中DOM的基础方法
【10月更文挑战第31天】这些DOM基础方法是操作网页文档结构和实现交互效果的重要工具,通过它们可以动态地改变页面的内容、样式和行为,为用户提供丰富的交互体验。
|
23天前
|
缓存 JavaScript UED
js中BOM中的方法
【10月更文挑战第31天】
|
11天前
|
JavaScript 前端开发
js中的bind,call,apply方法的区别以及用法
JavaScript中,`bind`、`call`和`apply`均可改变函数的`this`指向并传递参数。其中,`bind`返回一个新函数,不立即执行;`call`和`apply`则立即执行,且`apply`的参数以数组形式传递。三者在改变`this`指向及传参上功能相似,但在执行时机和参数传递方式上有所区别。
20 1
|
16天前
|
前端开发 JavaScript
用HTML CSS JS打造企业级官网 —— 源码直接可用
必看!用HTML+CSS+JS打造企业级官网-源码直接可用,文章代码仅用于学习,禁止用于商业
67 1
|
23天前
|
JavaScript 前端开发
.js方法参数argument
【10月更文挑战第26天】`arguments` 对象为JavaScript函数提供了一种灵活处理参数的方式,能够满足各种不同的参数传递和处理需求,在实际开发中具有广泛的应用价值。
36 7
|
21天前
|
前端开发 JavaScript 安全
HTML+CSS+JS密码灯登录表单
通过结合使用HTML、CSS和JavaScript,我们创建了一个带有密码强度指示器的登录表单。这不仅提高了用户体验,还帮助用户创建更安全的密码。希望本文的详细介绍和代码示例能帮助您在实际项目中实现类似功能,提升网站的安全性和用户友好性。
34 3
|
24天前
|
JavaScript
JS鼠标框选并删除HTML源码
这是一个js鼠标框选效果,可实现鼠标右击出现框选效果的功能。右击鼠标可拖拽框选元素,向下拖拽可实现删除效果,简单实用,欢迎下载
38 4
|
22天前
|
移动开发 HTML5
html5+three.js公路开车小游戏源码
html5公路开车小游戏是一款html5基于three.js制作的汽车开车小游戏源代码,在公路上开车网页小游戏源代码。
52 0
html5+three.js公路开车小游戏源码