爱易网
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 浏览次数:20494 次
精通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-easyUI treegrid 异步加载有关问题
新人请问一个 校验日期 着急用
js getElementById有关问题
以下是标题切换图片,但是有个遗憾,下面的文字会随着第三张图片的切换而上下抖动,哪位朋友帮忙修改下,100分送上,谢~该如何处理
CSDN论坛-谈论Firefox扩展开发的帖子解决办法
JavaScript DOM学习札记1——DOM节点层次
EXT的ComboBox怎么动态加载数据
js 方式窗口的使用
怎么获取对象
推荐阅读
更多>
js正则表达式运用 方法
求鼠标经过li行变色解决办法
关于Ext comboBox的监听,该如何解决
代码不兼容FF 请帮忙修改一下,该如何解决
jsp中request.getParameterNames()跟request.getParameterValues()的学习
【转】运用Javascript动态创建表格,不同的方法,巨大的运行时间差异
Jackson学习4之使用Streaming API创建以及读取JSON
JS退后一页, JS返回上一页代码
三个frame中相互共享值的有关问题
求好手把这个弹窗代码改成用cookie控制24小时显示一次的那种!谢了
Jquery 怎么获取Lable里面的值
js有关问题:prop
js如何获取com组件中的输出参数
jquery $.ajax(),该如何解决
怎么用javascript改变元素的从属关系
<body class="<script>document.write("ss");</script>">这样写不对,怎样写才对呢?解决方案
Javascript第四课
关于jQuery选择select的text的有关问题
Java中施用JSONObject对象必备
JSP页面运用富文本控件ckeditor自定义样式