去掉CSS中的表达式Expression

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

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

下面是方法的说明:

 

语法

bSuccess = object.removeExpression(sPropertyName)

参数

sPropertyNameRequired. String that 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类,作用:限制图片的最大宽度,超出指定宽度等比缩小。

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

 

 图片<img>

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

 

切换按钮

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

 

js代码(需要jQuery)

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

  

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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值