超出容器部分内容显示省略号的可行方案
一个Web项目中有装载数据的表格,表格列可以拖拽调整宽度,在IE下可用text-overflow:ellipsis样式实现 超出列宽的内容以省略号代替,无奈标准浏览器不支持。网上的许多方案也不完美,有的利用hack手法能在Firefox下显示省略号,但是在字符没有超过宽度的情况下也会显示。如果用前端脚本来处理的话又感觉浪费了性能。最后采取了火狐的如下方式:

一个Web项目中有装载数据的表格,表格列可以拖拽调整宽度,在IE下可用text-overflow:ellipsis样式实现 超出列宽的内容以省略号代替,无奈标准浏览器不支持。网上的许多方案也不完美,有的利用hack手法能在Firefox下显示省略号,但是在字符没有超过宽度的情况下也会显示。如果用前端脚本来处理的话又感觉浪费了性能。最后采取了火狐的如下方式:
根据ECMA-262中的解释,Object.prototype.toString(),将返回对象实例的类型,返回格式[object class ]字符串。所以 通过 slice截取’class’值,也就是类型值。其中null与undefined例外,因为他们返回的是IE中[object Object],标准浏览器[object Window]。因此单独拿出判断。
javascript是基于原型(Prototype based)的面向对象的语言(有人说基于对象?呵呵
),这点不同于我们熟悉的.NET,Java语言,是基于类模式(Class based)。
所以javascript中没有类的概念。理解这一点很重要,很多javascript教程为了让读者更容易理解,会套用他们常用的类模式中的概念,这 样反而让大家产生歧义。
高效、快速的前端应用能带来良好的用户体验。但当系统过于庞大、应用过于复杂时,前端表现难免会减分。分辨web应用的性能瓶颈,一般从下面三个方面入手寻找(针对Javascript开发的前端应用):
1、如果局域网不慢而互联网上慢,为 加载慢;
2、如果Chrome不慢而IE慢,为 渲染慢;
3、越用越慢,可能为 内存泄露。
打开你的应用,来寻根究底吧:
在我们开发互联网富应用(RIA)时,我们经常写一些javascript脚本来修改或者增加页面元素,这些工作最终是DOM——或者说文档对象模型——来完成的,而我们的实现方式会影响到应用的响应速度。
DOM操作会导致浏览器重解析(reflow),这是浏览器的一个决定页面元素如何展现的计算过程。直接修改DOM,修改元素的CSS样式,修改浏览器的窗口大小,都会触发重解析。读取元素的布局属性比如offsetHeithe或者offsetWidth也会触发重解析。重解析需要花费计算时间,因此重解析触发的越少,应用就会越快。
DOM操作通常要不就是修改已经存在的页面上的元素,要不就是创建新的页面元素。下面的4种优化方案覆盖了修改和创建DOM节点两种方式,帮助你减少触发浏览器重解析的次数。
JavaScript 可算是世界上最流行的编程语言,它曾被 Web 开发设计师贴上噩梦的标签,虽然真正的噩梦其实是 DOM API,这个被大量的开发与设计师随手拈来增强他们的 Web 前端的脚本语言,如今越来越被重视,虽则如此,JavaScript 仍然拥有很多让人费解的东西。
今天看到有5道Javascript题目,很有意思,值得琢磨。原文为zaka在twitter发的回答Baranovskiy的So, you think you know JavaScript。原文如下:
Quick test for real understanding of JavaScript core beyond closures and scopes. Here five small scripts. Try to answer what will be alerted in each case without running them in the console. Then you could create a test file and easily check your answers. Ready?
对字符串进行HTML编码和解码很方便的JS函数,省去了正则替换的繁琐,记录下来,以备后用。
这是一篇让我印象深刻的关于JavaScript的文章。原文来自:《JavaScript for C & Python programmers 》,经过作者Canis允许后翻译,即使转载请附带此链接。
前言:很少干翻译的事情,累,辛苦,不能发挥,典型的费力不讨好,最近无聊,想在网页上显示动画(因为CSDN贴图不是不让贴了嘛),Java applet虽然已经搞定了,但是总感觉这不是Java的世界,所以想大概学习一下JavaScript后再做决定,(-_-!从命名上看其实像是换成了 Java的脚本-_-!)网上类似JAVA for C++ programmers的文章很多,但是js类似的文章却很少,一方面可能的确java更加流行,另一方面可能一般的C/C++程序员与js的领域差的太远,没有此需求,本文也不是为C++程序员写的,是为c和python程序员写的。
翻译完后,就个人感觉,本文甚至不能算是一个较好的指南,大概可以看做一个C,Python程序员学习 JavaScript时的抱怨,全文有太多作者的抱怨,针对JavaScript不寻常的语法提出了很多看法,用本文来全面的了解Javascript是不太可能的,但是了解一下作为一个C,Python程序员,学习JavaScript应该注意哪些奇特的地方,也不是没有好处。
今天实现一个表格,需要表头不能被选中。设置节点unselectable=’on’,在IE起作用,但是在FF没有效果,后来发现如果要让FF生效应该在样式中设置如下: -moz-user-select:none。
聊当记录。