当前位置: 首页 > 图文教程 > 网络编程 > Javascript > 在修改准备发的批量美化select+可修改select时,在非IE下发现了几个问题

Javascript
Javascript 学习笔记 错误处理
Javascript 类的继承实现代码
JavaScript 创建对象和构造类实现代码
JavaScript 学习小结(适合新手参考)
extjs 列表框(multiselect)的动态添加列表项的方法
javascript getElementsByName()的用法说明
Document 对象的常用方法
JS 事件冒泡 示例代码
JS 面向对象的5钟写法
JS 输入字数判断实现代码
Javascript 汉字字节判断
JavaScript 关键字屏蔽实现函数
一句话JavaScript表单验证代码
利用javascript实现一些常用软件的下载导航
jQuery 相关控件的事件操作分解
JavaScript 异步调用框架 (Part 1 - 问题 & 场景)
JavaScript 异步调用框架 (Part 2 - 用例设计)
JavaScript 异步调用框架 (Part 3 - 代码实现)
JavaScript 异步调用框架 (Part 4 - 链式调用)
JavaScript 异步调用框架 (Part 5 - 链式实现)

Javascript 中的 在修改准备发的批量美化select+可修改select时,在非IE下发现了几个问题


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-10   浏览: 153 ::
收藏到网摘: n/a

发现的问题可能会陆续添加
1. Mozilla和Opera都不支持该字体,改掉DTD也是没有效果。测试在Mozilla Firefox1.5, Opera9.0下都是显示成Arial字体。而特殊符号是支持的。
如:
<body id="www.never-online.net">
<div style="font-family:Webdings">6</div>
<div>▼</div>
</body>
可以在不同浏览器打开,就可以看到区别了,以前不常用Webdings字体,现在才发现这个问题,所以以后还是用图片做这些比较好了。
2. 在IE和Opera中添加select控件的option,可以这样
<select id="sel">
</select>
<script type="text/javascript">
//<![CDATA[
var a=document.getElementById("sel");
var o=new Option("never-online.net","a",false,false);
a.add(o);
//]]>
</script>
但是在Mozilla下是失败的,将抛出异常。如果在Mozilla中动态添加select控件的Option呢?只需要这样
<select id="sel">
</select>
<script type="text/javascript">
//<![CDATA[
var a=document.getElementById("sel");
var o=new Option("never-online.net","a",false,false);
a.options.add(o);
//]]>
</script>
a.options.add(o);这句意思是不像在IE中可直接在select控件对象上添加option,而要在options对象上添加option,因此也可以从这一点看出Mozilla中要求写代码很严格。
3.同样的,在删除时,用remove方法,但不同的是不在options对象上删除option,而是在select控件对象上做的操作。代码
<select id="sel">
</select>
<script type="text/javascript">
//<![CDATA[
var a=document.getElementById("sel");
var o=new Option("never-online","a",false,false);
a.options.add(o);
alert("你可以看到添加了never-online这个option");
a.remove(0);
alert("现在删除添加的option");
//]]>
</script>