1、获取元素的位置
说明:obj为DOM元素对象。返回位置对象(pos)
function getPos(obj) {
var pos = {
"top" : 0,
"left" : 0
};
if (obj.offsetParent) {
while (obj.offsetParent) {
pos.top += obj.offsetTop;
pos.left += obj.offsetLeft;
obj = obj.offsetParent;
}
} else if (obj.x) {
pos.left += obj.x;
} else if (obj.x) {
pos.top += obj.y;
}
return pos;
}
2、获取滚动位置
function getPageScroll(){
var scrollObj = {
"top" : 0,
"left" : 0
};
if (self.pageYOffset) {
scrollObj.top = self.pageYOffset;
scrollObj.left = self.pageXOffset;
} else if (document.documentElement && document.documentElement.scrollTop){
scrollObj.top = document.documentElement.scrollTop;
scrollObj.left = document.documentElement.scrollLeft;
} else if (document.body) {
scrollObj.top = document.body.scrollTop;
scrollObj.left = document.body.scrollLeft;
}
return scrollObj;
}
3、获取窗口尺寸
function getWindowSize()
{
var win = {
"width" : 0,
"height" : 0
};
//获取窗口宽度
if (window.innerWidth)
win.width = window.innerWidth;
else if ((document.body) && (document.body.clientWidth))
win.width = document.body.clientWidth;
//获取窗口高度
if (window.innerHeight)
win.height = window.innerHeight;
else if ((document.body) && (document.body.clientHeight))
win.height= document.body.clientHeight;
//获取窗口大小
if (document.documentElement && document.documentElement.clientHeight && document.documentElement.clientWidth)
{
win.height = document.documentElement.clientHeight;
win.width = document.documentElement.clientWidth;
}
return win;
}
4、触发事件
/**
* 触发事件
*
* @param el 对象
* @param eventName 事件名称
* @return
*/
function touchOffEvent(el, eventName) {
if (document.all) {
el.fireEvent(eventName);
} else {
if ("onchange" == eventName.toLowerCase()) {
el.onchange();
} else if ("onclick" == eventName.toLowerCase()) {
el.onclick();
} else if ("ondblclick" == eventName.toLowerCase()) {
el.ondblclick();
} else if ("onfocus" == eventName.toLowerCase()) {
el.onfocus();
} else if ("onselect" == eventName.toLowerCase()) {
el.onselect();
} else if ("onhelp" == eventName.toLowerCase()) {
el.onhelp();
} else if ("onkeydown" == eventName.toLowerCase()) {
el.onkeydown();
} else if ("onkeypress" == eventName.toLowerCase()) {
el.onkeypress();
} else if ("onkeyup" == eventName.toLowerCase()) {
el.onkeyup();
} else if ("onmousedown" == eventName.toLowerCase()) {
el.onmousedown();
} else if ("onmousemove" == eventName.toLowerCase()) {
el.onmousemove();
} else if ("onmouseout" == eventName.toLowerCase()) {
el.onmouseout();
} else if ("onmouseover" == eventName.toLowerCase()) {
el.onmouseover();
} else if ("onmouseup" == eventName.toLowerCase()) {
el.onmouseup();
} else {
alert("没有"+eventName+"事件!");
}
}
}
5、检查用户使用的浏览器
/**
* 检查用户使用的浏览器
*
* @return
*/
function checkUserAgent() {
if ((navigator.userAgent.indexOf('MSIE') >= 0)
&& (navigator.userAgent.indexOf('Opera') < 0)) {
alert('你是使用IE');
} else if (navigator.userAgent.indexOf('Firefox') >= 0) {
alert('你是使用Firefox');
} else if (navigator.userAgent.indexOf('Opera') >= 0) {
alert('你是使用Opera');
} else {
alert('你是使用其他的浏览器浏览网页!');
}
}
6、去除两端空格
function trim(str) {
return triml(trimr(str));
}
//去除右边空格
function trimr(str){
return (str + '').replace(/(\s+)$/g, '');
}
//去除左边空格
function triml(str) {
return (str + '').replace(/^\s+/g, '');
}
7、email正则表达式验证
function checkEmail(val){
if(/^[a-zA-Z]([a-zA-Z0-9]*[-_.]?[a-zA-Z0-9]+)+@([\w-]+\.)+[a-zA-Z]{2,}$/.test(val+"")){
return true;
}else{
return false;
}
}
8、复制内容到剪切板
function copyMessage(mess){
if(window.clipboardData){
window.clipboardData.setData("Text", mess);
alert("己复制到剪切板");
return true;
}else if(window.netscape){
try {
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
} catch (e) {
alert("您的firefox安全限制限制您进行剪贴板操作,请打开'about:config'将signed.applets.codebase_principal_support'设置为true'之后再重试!");
return false;
}
var clip = Components.classes["@mozilla.org/widget/clipboard;1"].createInstance(Components.interfaces.nsIClipboard);
if (!clip){
alert("当前浏览器不支持,请手动复制");
return false;
}
var trans = Components.classes["@mozilla.org/widget/transferable;1"].createInstance(Components.interfaces.nsITransferable);
if (!trans){
alert("当前浏览器不支持,请手动复制");
return false;
}
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 = mess;
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);
alert("己复制到剪切板");
}else if(navigator.userAgent.indexOf("Opera")!= -1){
window.location = mess;
alert("己复制到剪切板");
}
}
分享到:
相关推荐
### 最常用的10个javascript自定义函数 在前端开发领域,JavaScript无疑是最为重要的编程语言之一。它不仅灵活多变,而且拥有强大的功能,能够帮助开发者实现各种复杂的交互效果。本文将详细介绍十个最常见的自定义...
在JavaScript编程中,自定义函数是开发者们常用的一种工具,它们可以帮助我们封装代码,提高代码的可重用性和可维护性。这篇博客“10个常用自定义JavaScript函数”提供了十个非常实用的函数示例,旨在提升开发效率。...
### JavaScript 十个最常用的自定义函数详解 #### 一、引言 JavaScript 是一种广泛应用于网页开发中的脚本语言,它提供了强大的功能来增强网页的交互性和动态性。随着前端技术的发展,开发者们常常会遇到需要频繁...
总之,自定义函数替换现有函数是软件开发中常用的技术,它可以提高代码质量、满足特定需求,并有助于项目的长期维护和发展。在实际应用中,应根据项目需求谨慎选择何时及如何进行替换,确保代码的稳定性和可维护性。
这个"javascript常用函数集合"涵盖了JavaScript编程中常见的函数和概念,是学习和提升JavaScript技能的重要资源。以下是对这些常见函数和基础知识的详细解释: 1. **变量声明**:在JavaScript中,我们可以使用`var`...
本文将详细介绍JavaScript中的一些常用验证函数,这些函数对于确保用户输入的有效性和提高用户体验至关重要。 一、验证类 1. 数字验证: - 整数验证:`/^(-|\+)?\d+$/.test(str)`,该正则表达式用于检查字符串...
在学习和使用JavaScript时,数组是一种常用的数据结构,用于存储和操作有序集合。数组中的元素可以是任意类型,可以是数字、字符串、对象甚至其他数组。对于数组操作,一个常见的需求是判断一个特定的值是否存在于...
在这个"javascript: 常用函数整理(持续中)"的博文中,作者ado88可能详细介绍了JavaScript中的关键函数和它们的应用。 首先,JavaScript的函数是可重用的代码块,可以接受参数并返回值。基础函数包括`Math`对象中...
总结而言,JavaScript中的自定义回调函数在处理异步操作时扮演了关键角色,使开发者能够控制代码的执行流程,确保操作的先后顺序。jQuery等库支持回调函数,使得操作更加灵活。随着Promise的引入,JavaScript异步...
这里我们将深入探讨标题和描述中提及的JavaScript常用函数。 1. 常规函数: - `alert()`:用于弹出警告对话框,通常包含一个“确定”按钮。 - `confirm()`:弹出确认对话框,有“确定”和“取消”两个按钮,返回...
在本文中,我们将深入探讨如何利用JavaScript自定义折叠菜单,并结合jQuery库来简化这一过程。 首先,折叠菜单是网页设计中常用的一种交互元素,它可以有效地组织和展示大量信息。通过点击一个按钮或链接,菜单会...
**jQuery作者John Resig封装的JavaScript常用函数** John Resig是jQuery库的创建者,他的工作对于现代Web开发产生了深远的影响。在JavaScript的世界里,他不仅贡献了强大的jQuery框架,还编写了许多实用的辅助函数...
开发者还可以通过自定义函数扩展JavaScript的功能,以适应特定项目的需求。同时,随着JavaScript框架和库的不断发展,如jQuery、React等,函数的使用也变得更加便捷和强大。学习并掌握这些基本函数是成为JavaScript...
### JQuery 常用函数及功能详解 #### 一、文档加载完成执行函数 在Web开发中,确保脚本在页面完全加载后再执行是至关重要的。`$(document).ready()` 函数提供了一种简单有效的方法来实现这一点。 **示例代码**: ``...
以下是一些在PHP工程开发中最常用的自定义函数,它们涵盖了数据处理、安全防护、随机生成、时间转换以及网络请求等方面。 1. `alert($msg)`: 这个函数主要用于简单的错误提示或信息输出,通过`echo`直接在页面上...