爱易网
IT新闻
IT新闻
爱易资讯
网站搭建
云虚拟主机教程
云服务器教程
Apache教程
IIS教程
Nginx教程
网站策划
站长文章
推广教程
淘宝客教程
网页设计
HTML教程
XHTML教程
CSS教程
HTML5教程
CSS3教程
JavaSript基础
JQuery教程
Node.js教程
前端技术
Ajax教程
Js特效
Xml教程
平面设计
页面UI设计
photoshop教程
程序开发
AI人工智能
Asp教程
Php教程
Asp.Net教程
Net Core教程
C#教程
Java教程
Jsp教程
开发技术
微信小程序教程
Uniapp开发教程
微信公众号开发
Andriod教程
IOS教程
DOS教程
Python教程
Docker教程
Windows Container教程
数据库
MSSQL教程
MySQL教程
Redis教程
Access教程
Oracle教程
数据库教程
操作系统
Linux教程
Windows教程
MAC教程
Cisco教程
交换机教程
防火墙教程
搜索
爱易网页
JavaSript
精通javascript 代码小结
精通javascript 代码小结
日期:2014-05-16 浏览次数:20594 次
精通javascript 代码总结
在看了《精通javascript 》一书中,里面讲了很多工具函数,先整理一部分。
主要在javascript和css交互的代码:
function text(e) { //获取元素文本内容 var t = ""; e = e.childNodes || e; for (var i = 0, count = e.length; i < count; i++) { t += e[i].nodeType != 1 ? e[i].nodeValue : text(e[i].childNodes); } return t; } function attr(elem, name, value) { //获取或设置元素属性值 if (!name || name.constructor != String) return ""; name = { "for": "htmlFor", "class": "className"}[name] || name; if (typeof value != "undefined") { elem[name] = value; if (elem.setAttribute) { elem.setAttribute(value); } } return elem[name] || elem.getAttribute(name) || ""; } function stopDefault(e) { //防止默认浏览器行为 if (e && e.preventDefault) { e.preventDefault(); } else { window.event.returnValue = false; } return false; } function stopBubble(e) { //阻止事件冒泡 if (e && e.stopPropagation) { e.stopPropagation(); } else { window.event.cancelBubble = true; } } //调用示例<a href="#" onclick=" alert('ok'); stopBubble(event);">demo</a> function pageX(elem) { //获取元素的水平位置 return elem.offsetParent ? elem.offsetLeft + pageX(elem.offsetParent) : elem.offsetLeft; } function pageY(elem) { //获取元素的垂直位置 return elem.offsetParent ? elem.offsetTop + pageY(elem.offsetParent) : elem.offsetTop; } function parentX(elem) { //获取元素相对于父亲的水平位置 return elem.parentNode == elem.offsetParent ? elem.offsetLeft : pageX(elem) - pageX(elem.parentNode); } function parentY(elem) { //获取元素相对于父亲的垂直位置 return elem.parentNode == elem.offsetParent ? elem.offsetTop : pageY(elem) - pageY(elem.parentNode); } function resetCss(elem, prop) { //设置css一组属性,它可以恢复到原有的设置 var old = {}; for (var i in prop) { old[i] = elem.style[i]; elem.style[i] = prop[i]; } return old; } function restoreCss(elem, prop) { for (var i in prop) { elem.style[i] = prop[i]; } } function getStyle(elem, styleName) { if (elem.style[styleName]) {//内联样式 return elem.style[styleName]; } else if (elem.currentStyle) {//IE return elem.currentStyle[styleName]; } else if (document.defaultView && document.defaultView.getComputedStyle) {//DOM styleName = styleName.replace(/([A-Z])/g, '-$1').toLowerCase(); var s = document.defaultView.getComputedStyle(elem, ''); return s && s.getPropertyValue(styleName); } else {//other,for example, Safari return null; } } function fullHeight(elem) { //查找元素可能的高度 //如果元素显示那么使用offsetHeight就可以得到高度,如果没有offsetHeight,则使用getHeight() if (getStyle(elem, "display") != "none") { return elem.offsetHeight ; } var oldcss = resetCss(elem, { display: "", visibility: "hidden", position: "absolute" }); var height = elem.clientHeight ; restoreCss(elem, oldcss); return height; } function fullWidth(elem) { //查找元素可能的高度 //如果元素显示那么使用offsetWidth就可以得到高度,如果没有offsetWidth,则使用getWidth() if (getStyle(elem, "display") != "none") { return elem.offsetWidth ; } var oldcss = resetCss(elem, { display: "", visibility: "hidden", position: "absolute" }); var width = elem.client
上一篇: ssh如何知道删除实体成不成功
下一篇: 重定义extjs中button被点击后的式样
免责声明:
本文仅代表作者个人观点,与爱易网无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
相关资料
更多>
请教jquery里的$("[id$=*]")是怎么实现的
JSF 文件上载
JS获取浏览器名跟版本信息
MVVM框架jsViews跟Knockout的选择
ExtJS兑现异步Tree的节点搜索
listView展示对象以及access any RESTFull service that uses JSON
每15秒和服务器时间校对一次!请教怎么实现
|G|超难,用js控制flash里某按钮的点击帧!解决办法
jQuery.expr['']跟Jquery.cleanData是什么
推荐阅读
更多>
struts json注脚
js 台历
关于防止表单多次提交的有关问题(待) 有代码 希望高手帮助改下,
求教,如何获得当前浏览器框里的ip地址呢
javascript实现多语言碰到的有关问题
怎样在服务端写调用JavaScript的方法解决办法
求js写的实用的时间控件!该怎么解决
怎么取得下拉列表的文本
小弟我的jqgrid 中的navGrid 生效了,但是在界面中看不到按钮图标,鼠标放下去可以显示按钮的提示信息
js随机取整数,该如何处理
JavaScript兑现类与继承
nodejs+bootstrap实现分页成效
document.getElementById为空或不是对象解决方案
jsp页面兑现打印动态页面的分页
当代Javascript之对象创建
Javascript学习札记之 用链接对用户进行重定向
复制extjs grid报表数据
e.target 跟e.srcElement的区别
惯用javascript操作
跪求解释!解决方案