没有样式就是最好的样式

Archive for January, 2005


firefox 下如何使用 document.selection

Jan 6, 2005 Author: | Filed under: Uncategorized

firefox 用 document.getSelection()。

运行代码 [Ctrl+A 全部选择 提示:你可先修改部分代码,再按运行]

参考资料:

http://www.webreference.com/js/column12/getselection.html

hide CSS from Browsers(区分浏览器的CSS方法)

Jan 6, 2005 Author: | Filed under: Uncategorized


点击这里打开新窗口浏览此网页

测试如下,请用不同的浏览器来查看效果

属性选择器(attribute selector)

p[id] 表示选择所有带有 id 属性的 p 标签

p[ align=right] 表示选择所有align 属性为 right 的标签

firefox 可以识别,IE则不认识这种写法

运行代码 [Ctrl+A 全部选择 提示:你可先修改部分代码,再按运行]

属性选择器很有意思,以前发过相关日志,有4种写法:

[att] 匹配带有 att 属性的元素

[att=val] 匹配 att 属性值为 val 的元素

[att~=val] 匹配 att 属性中至少有一个 val值 的元素(用空格分开的多个值)

[att|=val] 匹配 att 属性中以 val值开头,用 - 连接的属性值的元素(用 - 连接的值)

举例如下:

运行代码 [Ctrl+A 全部选择 提示:你可先修改部分代码,再按运行]

更多用法变化,请参考w3c 相关说明:

http://www.w3.org/TR/REC-CSS2/selector.html#attribute-selectors

子对象选择器(child selectors)

注意,descendant selectors 和 child selectors 的区别。我个人的叫法是 包含选择器 和 子选择器,我不知道正式翻译应该是什么,计算机这东西本来就不适合用中文来表达,:(

p span 表示选择 p 内所有 span 标签

p>span 表示选择 p 内所有第一层子级 span 标签

IE认识descendant selectors(包含选择器) 的写法但不认识 child selectors(子选择器)的写法。

运行代码 [Ctrl+A 全部选择 提示:你可先修改部分代码,再按运行]

w3c 相关说明参考:

http://www.w3.org/TR/REC-CSS2/selector.html#child-selectors

/**/注释的方法

在选择器后立刻加上 /* */ 屏蔽低版本(5.0以下)的IE浏览器。我记得近日看过一个详细说明,应该在我的 365key 中,注释不同的写法,花样繁多的 hack,:(((

显示更多

The media attribute(media 属性)

当然了,低版本的浏览器怎么能认识这个呢?

显示更多

@import rule

很多低版本的浏览器,不认识前面这三个。

带引号的,不带引号的

@import url(”../hide1a.css”);

@import url(../hide1a.css);

不带url()的

@import “../hide2.css”;

IE 6也不认识这个(也就是说,屏蔽目前的所有IE)

带 media 说明的

@import url(../hide1b.css) screen;

具体在:

http://w3development.de/css/hide_css_from_browsers/import/

Tantek’s Hack

先屏蔽 netscape 4.x 以后再用这个,因为在netscape 4.x 会报错。屏蔽下列浏览器

* Netscape 4.x

* Mac IE 4.5 and lower

* Win IE 5.5 and lower

* Win Amaya 5.1

显示更多

其它 hack 方法若干:

http://w3development.de/css/hide_css_from_browsers/more/

[Edit on 2005-1-6 17:17:53 By guoshuang]

javascript 常见问题3

Jan 5, 2005 Author: | Filed under: Uncategorized

一些调试页面的时候使用的 javascript,拷贝在地址栏粘贴,回车执行或者收到收藏夹中,方便以后调试页面时使用.

Dump Scripts

显示页面中包含的javascript脚本内容

显示更多

Execute Arbitrary Scripts

显示一个提示窗口,可以输入javascript代码并执行

显示更多

调试页面的时候可以使用

Show Tables

显示表格边框

显示更多

Show DIV Borders

显示 Div 的边框

显示更多

Show DIV Borders with their IDs

显示 Div 的边框和 Id

显示更多

页面验证

分别为 html css 和 link 验证

显示更多

以上来自 Safari Developer FAQ

[Edit on 2005-1-5 17:29:17 By guoshuang]

javascript 常见问题2

Jan 5, 2005 Author: | Filed under: Uncategorized

代码导致编辑器混乱,只好先另开一篇日志继续写

这是tirm空格的自定义函数

显示更多

真正地刷新页面

使用 location.reload() 可以刷新页面,但是是否使用cache 缓存却是服务器端配置的问题。一个客户端的技巧是,在地址栏构造一个“查询”,如当前时间

location.replace(location.href+’?d=’+new Date().valueOf())

如果地址已经是“查询”字符串,则构造

location.replace(location.href+’&d=’+new Date().valueOf())

传送后台变量到前台javascript

jsvar=”<%= aspvar %>“; // asp jsp 写法

jsvar=”” // php 写法

得到随机数

function Random(x) { return Math.floor(x*Math.random()) }

得到 0 到 x-1 之间的数字;Random(x)+1 得到 1 到 x 之间的数字。

关于 a href=”javascript:…”

不推荐这种写法,最好用

注意:这种写法会导致 动画 gif 停止播放(IE中)

运行代码 [Ctrl+A 全部选择 提示:你可先修改部分代码,再按运行]

不合法 ID 对象的获取

以前见过一些应用,比如动态的ID等,不一定非要用于不合法的 ID 名称,而且请尽量不要使用这些非法的命名。document.all 就没有这个好处了,比如有一次后台给出的名称含有 .

运行代码 [Ctrl+A 全部选择 提示:你可先修改部分代码,再按运行]

运行代码 [Ctrl+A 全部选择 提示:你可先修改部分代码,再按运行]

.语法(dot notation)与 [] 语法(square brackets notation)

以前见过一个文章专门讨论 [] 语法,很有意思。

运行代码 [Ctrl+A 全部选择 提示:你可先修改部分代码,再按运行]

DOM简写的问题

common shortcut (introduced by IE and reproduced in some other browsers) in accessing DOM elements

不推荐简写,容易产生混淆。下面代码在firefox可以正确处理,IE不行,必须关掉一个 a

运行代码 [Ctrl+A 全部选择 提示:你可先修改部分代码,再按运行]

javascript调试问题

IE双击左下角的错误图标;mozilla类浏览器都有 javascript console(控制台)

BTW:firefox 在地址栏运行 javascript: 就可以打开控制台,我刚才就这么一弄,firefox没有响应,很慢,只好强关,哎,郁闷,一堆打开的页面还没有看呢…

cookie代码

显示更多

Favicon代码

注意,favicon 现在可不仅仅是为了美化收藏夹,没有指定 favicon 的 iie 会汇报错误日志!

显示更多

[Edit on 2005-1-5 17:27:15 By guoshuang]

javascript 常见问题1

Jan 5, 2005 Author: | Filed under: Uncategorized

framename.print()在IE中不能打印需要的框架?

必须先给予该框架焦点。

frameref.focus();

frameref.print();

parseInt()的进制问题

0 开始的字符串表示八进制,0x 开头的表示十六进制,可以设定第二个参数来明确指定进制。

Octal 八进制

Hexadecimal 十六进制

运行代码 [Ctrl+A 全部选择 提示:你可先修改部分代码,再按运行]

字符串空格处理

guoshuang改进版

运行代码 [Ctrl+A 全部选择 提示:你可先修改部分代码,再按运行]

[Edit on 2005-1-5 15:34:27 By guoshuang]

检测打开窗口是否存在

Jan 5, 2005 Author: | Filed under: Uncategorized

没有打开就打开一个,打开了就指定页面并设置焦点

显示更多