`

分享原生JavaScript技巧大收集(11~20)

阅读更多

11、原生JavaScript加入收藏夹

function AddFavorite(sURL, sTitle) {
    try {
        window.external.addFavorite(sURL, sTitle)
    } catch(e) {
        try {
            window.sidebar.addPanel(sTitle, sURL, "")
        } catch(e) {
            alert("加入收藏失败,请使用Ctrl+D进行添加")
        }
    }
}




12、原生JavaScript设为首页

function setHomepage() {
    if (document.all) {
        document.body.style.behavior = 'url(#default#homepage)';
        document.body.setHomePage('http://www.jq-school.com')
    } else if (window.sidebar) {
        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', 'http://www.jq-school.com')
    }
}



13、原生JavaScript判断IE6

var ua = navigator.userAgent.toLowerCase();
var isIE6 = ua.indexOf("msie 6") > -1;
if (isIE6) {
    try {
        document.execCommand("BackgroundImageCache", false, true)
    } catch(e) {}
}



14、原生JavaScript加载样式文件

function LoadStyle(url) {
    try {
        document.createStyleSheet(url)
    } catch(e) {
        var cssLink = document.createElement('link');
        cssLink.rel = 'stylesheet';
        cssLink.type = 'text/css';
        cssLink.href = url;
        var head = document.getElementsByTagName('head')[0];
        head.appendChild(cssLink)
    }
}



15、原生JavaScript返回脚本内容

function evalscript(s) {
	if(s.indexOf('<script') == -1) return s;
	var p = /<script[^\>]*?>([^\x00]*?)<\/script>/ig;
	var arr = [];
	while(arr = p.exec(s)) {
		var p1 = /<script[^\>]*?src=\"([^\>]*?)\"[^\>]*?(reload=\"1\")?(?:charset=\"([\w\-]+?)\")?><\/script>/i;
		var arr1 = [];
		arr1 = p1.exec(arr[0]);
		if(arr1) {
			appendscript(arr1[1], '', arr1[2], arr1[3]);
		} else {
			p1 = /<script(.*?)>([^\x00]+?)<\/script>/i;
			arr1 = p1.exec(arr[0]);
			appendscript('', arr1[2], arr1[1].indexOf('reload=') != -1);
		}
	}
	return s;
}



16、原生JavaScript清除脚本内容

function stripscript(s) {
	return s.replace(/<script.*?>.*?<\/script>/ig, '');
}



17、原生JavaScript动态加载脚本文件

function appendscript(src, text, reload, charset) {
	var id = hash(src + text);
	if(!reload && in_array(id, evalscripts)) return;
	if(reload && $(id)) {
		$(id).parentNode.removeChild($(id));
	}

	evalscripts.push(id);
	var scriptNode = document.createElement("script");
	scriptNode.type = "text/javascript";
	scriptNode.id = id;
	scriptNode.charset = charset ? charset : (BROWSER.firefox ? document.characterSet : document.charset);
	try {
		if(src) {
			scriptNode.src = src;
			scriptNode.onloadDone = false;
			scriptNode.onload = function () {
				scriptNode.onloadDone = true;
				JSLOADED[src] = 1;
			};
			scriptNode.onreadystatechange = function () {
				if((scriptNode.readyState == 'loaded' || scriptNode.readyState == 'complete') && !scriptNode.onloadDone) {
					scriptNode.onloadDone = true;
					JSLOADED[src] = 1;
				}
			};
		} else if(text){
			scriptNode.text = text;
		}
		document.getElementsByTagName('head')[0].appendChild(scriptNode);
	} catch(e) {}
}



18、原生JavaScript返回按ID检索的元素对象

function $(id) {
	return !id ? null : document.getElementById(id);
}



19、原生JavaScript返回浏览器版本内容

function browserVersion(types) {
	var other = 1;
	for(i in types) {
		var v = types[i] ? types[i] : i;
		if(USERAGENT.indexOf(v) != -1) {
			var re = new RegExp(v + '(\\/|\\s)([\\d\\.]+)', 'ig');
			var matches = re.exec(USERAGENT);
			var ver = matches != null ? matches[2] : 0;
			other = ver !== 0 && v != 'mozilla' ? 0 : other;
		}else {
			var ver = 0;
		}
		eval('BROWSER.' + i + '= ver');
	}
	BROWSER.other = other;
}



20、原生JavaScript元素显示的通用方法

function $(id) {
	return !id ? null : document.getElementById(id);
}
function display(id) {
	var obj = $(id);
	if(obj.style.visibility) {
		obj.style.visibility = obj.style.visibility == 'visible' ? 'hidden' : 'visible';
	} else {
		obj.style.display = obj.style.display == '' ? 'none' : '';
	}
}

 

 

文章来源:jquery教程 - http://www.jq-school.com/Show.aspx?id=301

 

分享到:
评论

相关推荐

    原生Javascript开发让你的表单亮起来

    原生JavaScript开发能帮助我们更好地控制和美化这些表单,使其更具交互性和吸引力。本文将深入探讨如何利用JavaScript来提升表单的用户体验,使其“亮起来”。 一、表单事件处理 原生JavaScript允许我们直接对表单...

    原生态纯JavaScript 100大技巧大收集

    ### 原生态纯JavaScript 100大技巧大收集 #### 1. 字符串长度截取 在处理文本时,我们常常需要对字符串进行截取,特别是当需要显示预览或者摘要时。该技巧提供了原生JavaScript实现的字符串长度截取功能。 **函数...

    Javascript中55个经典技巧

    在不断演变的前端世界中,掌握一些经典的JavaScript技巧对于提升编程效率和代码质量至关重要。以下是一些基于标题"JavaScript中55个经典技巧"所涵盖的知识点: 1. **变量声明**:使用`let`和`const`替代`var`,以...

    JavaScript所有资料

    "javascript技巧大全.htm"和"js技巧大集合.htm"是收集了大量JavaScript编程技巧和实践经验的文档,可能包括性能优化、错误处理、代码重构以及各种实用的代码片段,这些技巧可以帮助开发者编写更高效、更简洁的...

    JavaScript.docx

    2. **20 个使用原生 JavaScript 实现的 Web 项目**:通过实际参与项目开发,可以更深刻地理解 JavaScript 在实际应用场景中的作用。这类网站提供了从简单的 HTML/CSS 动画到复杂的单页应用等多种类型的项目实例,是...

    工作中常用的javascript脚本

    这个压缩包中收集的"工作中常用的javascript脚本"涵盖了各种实用场景,帮助开发者提高工作效率。 1. **基础语法** JavaScript的基础语法包括变量声明(`var`, `let`, `const`)、数据类型(如字符串、数字、布尔、...

    JavaScript最常用的55个经典技巧

    这篇博客“JavaScript最常用的55个经典技巧”分享了一些实用的编程技巧,帮助开发者提高效率和代码质量。以下是对这些技巧的详细解读: 1. **变量声明与作用域**:理解var、let和const的区别,避免全局污染,正确...

    javascript学习笔记之10个原生技巧

    首先在这里要非常感谢无私分享作品的网友们,这些代码片段主要由网友们平时分享的作品代码里面和经常去逛网站然后查看源文件收集到的。把平时网站上常用的一些实用功能代码片段通通收集起来,方便网友们学习使用,...

    这个项目收集移动端开发所需要的一些资源与小技巧

    3. **工具和库**:可能会分享一些实用的JavaScript库或插件,用于优化移动开发,如性能优化、网络请求处理、动画效果等。 4. **最佳实践**:项目可能总结了移动端开发中的最佳实践,如响应式设计、离线存储策略、...

    html javascript lesson7

    5. **jQuery库**:虽然原生JavaScript已经足够强大,但jQuery简化了很多常见任务,如DOM操作、事件处理和动画。学习者可能被介绍到jQuery的基本用法及其如何提高开发效率。 6. **表单处理**:HTML表单是收集用户...

    30secondsofcode中文版翻译收集有用的Javascript片段你可以在30秒或更少的时间里理解

    **30秒速成代码:JavaScript实用技巧** 在编程领域,效率至关重要,尤其是在JavaScript的世界里。"30 seconds of code" 是一个广受欢迎的开源项目,它汇集了一系列简洁、实用的JavaScript代码片段,旨在帮助开发者...

    web前端期末大作业——仿小米商城电商平台(6页) html+css+javascript网页设计实例 企业网站制作

    - **原生JavaScript**: 项目中提到使用了原生JavaScript技术,这意味着没有依赖任何第三方库或框架,而是直接使用浏览器内置的JavaScript功能来实现动态效果。 - **鼠标滑过特效**: 这种效果通常是通过监听鼠标...

    一本使用ES6用JavaScript编写FP的指南.zip

    结合以上知识点,"一本使用ES6用JavaScript编写FP的指南"很可能是详细讲解如何利用ES6特性来实现和理解函数式编程的书籍,包含了大量的示例和实践指导,对于提升JavaScript开发者的编程技巧和思维方式大有裨益。

    jQuery 技巧收集

    DOM对象可以使用原生JavaScript的DOM方法,而jQuery对象则可以使用jQuery提供的丰富API。 3. **获取jQuery集合的某一项** 当选取的元素集合包含多个元素时,可以使用`eq(index)`或`get(index)`方法获取特定索引的...

    Pro-Android-Web-Apps-Developing-HTML5-JavaScript-CSS-and-Chrome-OS-Web-Apps.pd

    - **第11章:比较移动UI框架**:对比分析了几种流行的移动UI框架,帮助开发者选择最适合项目的工具。 - **第12章:打磨并打包应用发布**:提供了实用的建议和技术指南,帮助开发者准备并发布他们的Web应用。 - **...

    原生或第三方平台上的App开发的教程、源代码项目

    ### 原生或第三方平台上的App开发教程与源代码项目详解 #### 一、原生App开发 ##### 1. Android原生App开发 **工具:** - **Android Studio:** 安卓官方推荐的集成开发环境(IDE),提供了完整的开发流程支持,...

    大四web前端网页制作课作业——HTML+CSS+JavaScript仿小米手机商城网站(37页d

    这种设计能够帮助学生理解和实践不同类型的网页设计方法与技巧。 - **Div+CSS布局**:这是现代网页设计中非常基础且重要的一个组成部分。通过使用Div标签来进行区块划分,并结合CSS来控制样式,可以使网页布局更加...

    Weekly75, react-native iOS版奇舞周刊.zip

    React-Native作为Facebook推出的开源项目,已经成为跨平台移动应用开发的重要工具,尤其在iOS平台上,它为开发者提供了用JavaScript编写原生应用的能力。奇舞周刊,作为国内知名的IT技术分享平台,定期发布各类技术...

    BicaVM JS版 for Java

    这要求开发者在JavaScript中实现类加载系统、垃圾收集机制、方法调用以及异常处理等复杂功能。这样的实现挑战了JavaScript的边界,展示了其作为动态语言的强大能力。 项目中的**BicaVM**部分可能包含了以下几个关键...

Global site tag (gtag.js) - Google Analytics