显示标签为“Javascript”的博文。显示所有博文
显示标签为“Javascript”的博文。显示所有博文

2009-06-16

javascript中的比较

如果把一个string和一个number相比较,javascript会自动试着将string转换为number,所以 "1.010" == 1.01 表达式返回true。

空和空格会被转换为数字0,所以不管是"" == 0,还是"  " == 0 都会返回true。

这也与使用的比较操作符 == 有关。更严格的比较使用 ===,参看javascript reference

2007-08-16

Wordpress 2.2使用jquery

Wordpress的开发者从2.2版本开始使用jquery作为其核心的Javascript库了,因为他们认为jquery is lighter and faster。看来jquery的发展越来越被人看好。在扩展digilib时我也使用了jquery,觉得它非常方便,清晰。一个名为visual jqeury的文档对这个库的各个函数作了很明了的分类,有时要比阅读API更方便。

jquery中很多函数操作的对象都为jqury对象的集合,而jquery自身的一个名为implicit iteration的特性能自动遍历处理集合中的每一个对象,省掉了很多for循环语句。

另外jquery的selector非常丰富,支持CSS和Xpath的表达式。此外jquery还有一个名为chaining的特性,能避免创建过多的临时变量。

This means that the result of most operations on an object is the object itself, ready for the next action to be applied to it.

2007-07-18

使用Firebug

Firefox的插件Firebug对于开发调试网页实在太有帮助了。用F12就可以激活Firebug,默认在网页下端显示。我常用control + F12在新窗口中打开Firebug,这样在左边的主显示器上显示网页,在右边的副显示器上显示Firebug的窗口。这样在使用inspect功能时可以很方便的看到对应元素的代码。查看更多Firebug的快捷键。

在使用console功能时,如果选中了larger command line,Firebug为输入javascript提供的类似vim中设置选项一样的自动补全功能不可用。当在javascript的console提示符>>>后复制一段javascript代码时,larger command line会自动被激活。

在Firebug功能选择的上面一行选中一个元素,右键可以激活Log Events选项。这样可以在console查看事件输出。

有了Firebug不用去W3C查看CSS中的box model了。选中html,选定元素,再选中右边的Layout tab,就可以看到元素的box布局了。

当Firefox加载的网页包含多个frames时,Firebug默认的context是top-level的页面,如何切换context到其中的一个frame呢?

答案:

cd(window)

By default, command line expressions are relative to the top-level window of the page. cd() allows you to use the window of a frame in the page instead.

在command line下的常用函数:

$(id)
Returns a single element with the given id.

$$(selector)
Returns an array of elements that match the given CSS selector.

$x(xpath)
Returns an array of elements that match the given XPath expression.

用于输出日志的函数:

console.debug("message" [,objects]) - Logs a debug message.
console.info("message" [,objects]) - Logs an informative message.
console.warn("message" [,objects]) - Logs a warning.
console.error("message" [,objects]) - Logs an error.

2006-10-11

Prototype-based JavaScript

这几天系统的学习了一下Javascript。以前对Javascript面向对象的特点没什么体会,经过这两天的学习慢慢有了些认识,对于文献中经常提到的Prototype概念也多少有了些理解。这个概念对理解Javascript中的继承还是很重要的。

下面是来自Core JavaScript 1.5 Guide的一个简单例子,可以看看如何继承在Javascript重视如何实现的。

       Employee
       |         |
       |         |
       |         |
Manager     WorkBee
                   |    |
                   |    |
    SalesPerson     Engineer

function Employee () {
this.name = ""
this.dept = "general"
}

function Manager () {
this.reports = [];
}
Manager.prototype = new Employee;

function WorkerBee () {
this.projects = [];
}
WorkerBee.prototype = new Employee;

function SalesPerson () {
this.dept = "sales"
this.quota = 100;
}
SalesPerson.prototype = new WorkerBee;

function Engineer () {
this.dept = "engineering"
this.machine = ""
}
Engineer.prototype = new WorkerBee;

2006-03-23

使用sortedTable

今天下午把Anna发给我的东西加到为Sozialreferat做的Wohungstauschbörse里了。因为前几天看到一个用javascript实现的对表格排序的脚本,觉得很不错,便把它也应用到显示出租房屋的页面上了。刚开始怎么修改都不行,后来才发现要使用这个排序功能脚本必须要在声明表格的那行里加上: class="sorted"
<table class="sorted">
我以为这仅仅是涉及格式化的css的一个类,检查例子中的css文件,却发现根本没有sorted这个类。可是没有这个声明,排序就不起作用,添上后排序就没问题。我只能无论**吞枣先照此运用,等日后有时间再琢磨一番为何。

2005-08-18

css大师Eric Meyer制作的一个幻灯片制作工具

Eric Meyer不愧为CSS的大师,制作的网页符合规范,并且非常漂亮。在他的网页上还发现了一个叫做s5(A Simple Standards-Based Slide Show System)的制作幻灯片的工具。这里还有一个用s5制作的介绍它的网页幻灯片。

2005-08-13

语法高亮显示工具dp.SyntaxHighlighter

今天在网上发现一个用javascript写的开源项目dp.SyntaxHighlighter,用于高亮显示网页上的程序片断。该脚本能在IE 6.0和Firefox 1.0和Safari上正常运行,但不支持Opera。

2005-07-04

常见的检测客户端输入的函数

原作: Er@ser@CCF



// Function Name: trim
// Function Description: 去除字符串的首尾的空格
// Creation Date: 2004-7-13 15:30
// Last Modify By: N/A
// Last Modify Date: N/A
String.prototype.trim=function(){
return this.replace(/(^s*)|(s*$)/g, "");
}

2004-07-14

用 JavaScript 实现"back"按钮的功能

本技巧教你如何让你的读者能够从当前页面跳回到他们以前浏览过的页面。

是否很想有一个神奇的按钮,能将它放在你的 HTML 文档的任何地方,使你的读者能够从当前页回跳到以前浏览过的页面呢?或许,你不象我这么懒惰,但是我想有这个念头也不奇怪吧。在浏览的页面非常长时,我就很讨厌将鼠标移到浏览器的"Back"按钮上。