IE8 兼容性问题(属性名区分大小写)

如果将其中的属性height写成不是全部小写的时候,如写成 window.screen.Height或window.screen.heighT时,在IE6、IE7下可以得到值(IE6、IE7不区分大小写),在IE8下为undefined(IE8区分大小写),所以发生问题。
例:


代码如下:

<html>
<body>
<input type="button" value="Test" onclick="showMessage()">
</body>
<script lang="javascript">
function showMessage(){
alert(window.screen.Height);
}
</script>
</html>

解决方法:不区分大小写直接替换所有html、js和jsp文件即可。
INS系统中已知需要替换的属性列表:
window.screen.height (误写为window.screen.Height)
window.screen.width (误写为window.screen.Width)

(0)

相关推荐

  • IE8 兼容性问题(属性名区分大小写)

    如果将其中的属性height写成不是全部小写的时候,如写成 window.screen.Height或window.screen.heighT时,在IE6.IE7下可以得到值(IE6.IE7不区分大小写),在IE8下为undefined(IE8区分大小写),所以发生问题.例: 复制代码 代码如下: <html> <body> <input type="button" value="Test" onclick="showMess

  • js中将具有数字属性名的对象转换为数组

    虽然不太常用,但我们的确可以给对象添加以数字为属性名的属性: 复制代码 代码如下: var obj = {}; obj[0] = 1; obj[1] = 2; 这个对象并不是数组类型,那有没有办法把它转换为数组类型呢?jQuery代码中采用了Array.prototype.slice把这种对象转换为数组,但我试了好几遍,就是不行: 复制代码 代码如下: var obj = {}; obj[0] = 1; obj[1] = 2; alert(Array.prototype.slice.call(o

  • bootstrap IE8 兼容性处理

    bootstrap IE8 兼容性处理 <!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content=&q

  • MyBatis学习教程(四)-如何快速解决字段名与实体类属性名不相同的冲突问题

    在项目开发中,我们经常会遇到表中的字段名和表对应实体类的属性名称不一定都是完全相同的情况,下面小编给大家演示一下这种情况下的如何解决字段名与实体类属性名不相同的冲突问题,感兴趣的朋友一起学习吧. 一.准备演示需要使用的表和数据 CREATE TABLE orders( order_id INT PRIMARY KEY AUTO_INCREMENT, order_no VARCHAR(20), order_price FLOAT ); INSERT INTO orders(order_no, or

  • 使用变量动态设置js的属性名

    目标:js的属性名可以使用变量 举例:js对象object,当赋给该对象属性的时候可以采用以下方式 复制代码 代码如下: var object; object.prop1 = "value1"; object.prop2 = "value2"; 也可以采用如下方式: 复制代码 代码如下: object.push({prop1:"value1"}); object.push({prop2:"value2"}); 在这里prop1

  • json属性名为什么要双引号(个人猜测)

    原因一: 更加规范,利于解析 原因二: 避免class等关键字引起的不兼容问题 原因三: 可能也是最隐晦的: var a = 00; var b = {00: 12}; a in b; --> true var a = 0; var b = {'00': 12}; a in b; --> false 个人猜测如果js对象的属性名为非string类型,会先进行类型转换, 但是这个过程中可能会出现非预期性的值,虽然仅属个例,但养成一个好习惯还是很有必要的

  • C#编程获取实体类属性名和值的方法示例

    本文实例讲述了C#编程获取实体类属性名和值的方法.分享给大家供大家参考,具体如下: 遍历获得一个实体类的所有属性名,以及该类的所有属性的值 //先定义一个类: public class User { public string name { get; set; } public string gender { get; set; } public string age { get; set; } } //实例化类,并给实列化对像的属性赋值: User u = new User(); u.name

  • JS声明对象时属性名加引号与不加引号的问题及解决方法

    一般情况下属性名加引号和不加引号是都可以的,效果是一样的. var obj = { name : '你好', 'age' : 1, }; document.write( obj['name'] + '<br />' ); document.write( obj.age); 上面两行代码均可以正确执行. 当且仅当你的属性名是非法怪异的名字时候,会报错. var obj = { 333 : '这个会报错' }; document.write( obj.333); 此时报错. var obj = {

  • C#通过属性名字符串获取、设置对象属性值操作示例

    本文实例讲述了C#通过属性名字符串获取.设置对象属性值操作.分享给大家供大家参考,具体如下: #通过反射获取对象属性值并设置属性值 0.定义一个类 public class User { public int Id { get; set; } public string Name { get; set; } public string Age { get; set; } } 1.通过属性名(字符串)获取对象属性值 User u = new User(); u.Name = "lily"

  • Java8中如何通过方法引用获取属性名详解

    前言 在我们开发过程中常常有一个需求,就是要知道实体类中Getter方法对应的属性名称(Field Name),例如实体类属性到数据库字段的映射,我们常常是硬编码指定 属性名,这种硬编码有两个缺点. 1.编码效率低:因为要硬编码写属性名,很可能写错,需要非常小心,时间浪费在了不必要的检查上. 2.容易让开发人员踩坑:例如有一天发现实体类中Field Name定义的不够明确,希望换一个Field Name,那么代码所有硬编码的Field Name都要跟着变更,对于未并更的地方,是无法在编译期发现的

随机推荐