在IE中,CSS是可以嵌入js表达式的,可以在CSS类中定义,但是将含有表达CSS类从DOM对象中移除,样式表达式是不会失效的。

经过研究找到了答案,需要使用js调用style对象的removeExpression()方法才可去除。

下面是方法的说明:

语法

bSuccess = object.removeExpression(sPropertyName)

参数

sPropertyName Required. String that specifies the name of the property from which to remove an expression.

返回值

Returns one of the following possible values:

true The expression was successfully removed.
false The expression was not removed.

下面给出一个实用例子:利用样式限制图片最大宽度,通过一个按钮切换实际大小与缩放大小。

CSS类,作用:限制图片的最大宽度,超出指定宽度等比缩小。

  1. .wrap {
  2. border:none;
  3. max-width:730px;
  4. height:auto;
  5. width:expression(this.width>730?"730px":true);/*ie6补丁*/
  6. }

图片<img>

  1. <img id="chart_img" class="chart" src="bond_big.jpg"/>

切换按钮

  1. <span id="imgctr" style="cursor: pointer;display: block" onclick="showOrigin()">[原始大小]</span>

js代码(需要jQuery)

  1. function showOrigin(){
  2. $('#chart_img').toggleClass("chart");
  3. if($('#chart_img').attr("class")){
  4. $('#imgctr').text("[原始大小]");
  5. }else{
  6. $('#imgctr').text("[缩放大小]");
  7. $('#chart_img')[0].style.removeExpression('width'); /*ie6补丁*/
  8. }
  9. }

这个事例只有在IE6中才能体现removeExpression()的作用,ie7以上是不需要的。

去掉CSS中的表达式Expression的更多相关文章

  1. ie浏览器css中的行为expression详解

    CSS中的行为——expression (ie only) 最近对CSS中的行为比较感兴趣,虽然是不符合标准的也只有ie才能识别,但是他确实给css的功能扩展了不少.下面是摘自互联网上的文字和例子,因 ...

  2. 优化网站设计(七):避免在CSS中使用表达式

    前言 网站设计的优化是一个很大的话题,有一些通用的原则,也有针对不同开发平台的一些建议.这方面的研究一直没有停止过,我在不同的场合也分享过这样的话题. 作为通用的原则,雅虎的工程师团队曾经给出过35个 ...

  3. CSS中的行为——expression

    IE5及其以后版本支持在CSS中使用expression,用来把CSS属性和Javascript脚本关联起来,这里的CSS属性可以是元素固有的属性,也可以是自定义属性.就是说CSS属性后面可以是一段J ...

  4. css中的expression

    最近对CSS中的行为比较感兴趣,虽然是不符合标准的也只有ie才能识别,但是他确实给css的功能扩展了不少.下面是摘自互联网上的文字和例子,因为都被转烂了,没法注明出处. IE5及其以后版本支持在CSS ...

  5. 你应该了解的强大CSS表达式 ----- expression

    IE5及其以后版本支持在CSS中使用expression,用来把CSS属性和Javas cript表达式关联起来,这里的CSS属性可以是元素固有的属性,也可以是自定义属性.就是说CSS属性后面可以是一 ...

  6. 理解CSS中的数学表达式calc()

    前面的话 数学表达式calc()是CSS中的函数,主要用于数学运算.使用calc()为页面元素布局提供了便利和新的思路.本文将介绍calc()的相关内容 定义 数学表达式calc()是calculat ...

  7. css中的数学表达式calc()

    前言 数学表达式calc()是CSS中的函数,主要用于数学运算.使用calc()为页面元素布局提供了便利和新的思路. 概念 数学表达式calc()是calculate计算的缩写,它允许使用+.-.*. ...

  8. CSS中input输入框点击时去掉外边框方法【outline:medium;】----CSS学习

    CSS 中添加 outline:medium; JS 控制焦点: $("#CUSTOM_PHONE").focus(function(event){ // this.attr(&q ...

  9. CSS中新属性calc()

    CSS3的calc()使用 原文: http://www.w3cplus.com/css3/how-to-use-css3-calc-function.html © w3cplus.com calc( ...

随机推荐

  1. Python练习笔记——采用生成器函数实现两数之间的素数计算

    题目:编写一个生成器函数myprimes(start, end),实现[start, end)范围内的所有素数计算2 3 5 7. ... 第一 常规函数方法 方法1 def myprime(num) ...

  2. 转: javascript动态添加、修改、删除对象的属性和方法

    在其他语言中,对象一旦生成,就不可更改了,要为一个对象添加修改成员必须要在对应的类中修改,并重新实例化,而且程序必须经过重新编译.JavaScript 中却非如此,它提供了灵活的机制来修改对象的行为, ...

  3. 2-05. 求集合数据的均方差(15) (数学啊 ZJU_PAT)

    题目链接:http://pat.zju.edu.cn/contests/ds/2-05 设计函数求N个给定整数的均方差.若将N个数A[]的平均值记为Avg,则均方差计算公式为: 输入格式说明: 第1行 ...

  4. Python endswith() 方法

    描述 endswith() 方法用于判断字符串是否以指定后缀结尾,如果是则返回 True,否则返回 False. 语法 endswith() 方法语法: S.endswith(suffix[,star ...

  5. json字符串序列化exception处理

    一.背景: 使用REST接口接收远端传送过来的Json格式String,需要把这个String序列化成响应的对象. 二.问题: 对方封装了一个错误的json格式过来,程序就挂了…… 三.似乎解决: 通 ...

  6. python标准库介绍——15 fileinput 模块详解

    ``fileinput`` 模块允许你循环一个或多个文本文件的内容, 如 [Example 2-1 #eg-2-1] 所示. ====Example 2-1. 使用 fileinput 模块循环一个文 ...

  7. datagrid,treegrid携带参数刷新示例

    datagrid携带参数刷新: var queryParams = $("#datagridId").datagrid("options").queryPara ...

  8. 6.3 cmath--数学函数

    本模块提供了处理复数的数学函数.因此这些函数接受整数.浮点数或者复数作为參数. 6.3.1 与极坐标相互转换的函数 在Python里表示一个复数z,实部使用z.real表示,虚部使用z.imag,能够 ...

  9. C++11新特性应用--介绍几个新增的便利算法(用于排序的几个算法)

    继续C++11在头文件algorithm中添加的算法. 至少我认为,在stl的算法中,用到最多的就是sort了,我们不去探索sort的源代码.就是介绍C++11新增的几个关于排序的函数. 对于一个序列 ...

  10. Oracle SQLDeveloper ORA-01017 invalid username/password;logon denied (密码丢失解决方案)

    oracle sys账号用sql developer工具无法登陆 用户名和密码不一致 如果的确是丢失密码的话:在SQL*Plus中执行如下命令:   SQL>conn/as sysdba (操作 ...