首页 > 网站 > WEB开发 > 正文

去掉CSS中的表达式Expression

2024-04-27 14:31:41
字体:
来源:转载
供稿:网友
去掉CSS中的表达式ExPRession

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

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

下面是方法的说明:

语法

bSuccess = object.removeExpression(sPropertyName)

参数

sPropertyNameRequired.Stringthat specifies the name of the property from which to remove an expression.

返回值

Returns one of the following possible values:

trueThe expression was successfully removed.
falseThe expression was not removed.

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

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

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

图片<img>

Html代码收藏代码
  1. <imgid="chart_img"class="chart"src="bond_big.jpg"/>

切换按钮

Html代码收藏代码
  1. <spanid="imgctr"style="cursor:pointer;display:block"onclick="showOrigin()">[原始大小]</span>

js代码(需要jQuery)

java代码收藏代码
  1. functionshowOrigin(){
  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以上是不需要的。


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表