去掉CSS中的表达式Expression
2014-10-21 08:49
387 查看
在IE中,CSS是可以嵌入js表达式的,可以在CSS类中定义,但是将含有表达CSS类从DOM对象中移除,样式表达式是不会失效的。
经过研究找到了答案,需要使用js调用style对象的removeExpression()方法才可去除。
下面是方法的说明:
语法
参数
返回值
Returns one of the following possible values:
下面给出一个实用例子:利用样式限制图片最大宽度,通过一个按钮切换实际大小与缩放大小。
CSS类,作用:限制图片的最大宽度,超出指定宽度等比缩小。
Css代码
.wrap {
border:none;
max-width:730px;
height:auto;
width:expression(this.width>730?"730px":true);/*ie6补丁*/
}
图片<img>
Html代码
<img id="chart_img" class="chart" src="bond_big.jpg"/>
切换按钮
Html代码
<span id="imgctr" style="cursor: pointer;display: block" onclick="showOrigin()">[原始大小]</span>
js代码(需要jQuery)
Java代码
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以上是不需要的。
经过研究找到了答案,需要使用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类,作用:限制图片的最大宽度,超出指定宽度等比缩小。
Css代码
.wrap {
border:none;
max-width:730px;
height:auto;
width:expression(this.width>730?"730px":true);/*ie6补丁*/
}
图片<img>
Html代码
<img id="chart_img" class="chart" src="bond_big.jpg"/>
切换按钮
Html代码
<span id="imgctr" style="cursor: pointer;display: block" onclick="showOrigin()">[原始大小]</span>
js代码(需要jQuery)
Java代码
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以上是不需要的。
相关文章推荐
- css里可以加表达式 :expression
- 强大的CSS表达式 - expression
- CSS执行JS表达式或函数 CSS中expression使用简介
- CSS的expression判断表达式设置input样式
- CSS表达式(expression)解决IE6 position:fixed无效问题
- IE css expression(表达式)
- CSS中使用expression表达式
- CSS中使用expression,用来把CSS属性和Javas cript表达式关联起来
- 强大的CSS表达式 ----- expression
- IE8标准模式不再支持CSS表达式(Expression)
- 你应该了解的强大CSS表达式 ----- expression
- CSS系列:表达式(Expression)`淘汰`
- DataColumn.Expression 属性 获取或设置表达式,用于筛选行、计算列中的值或创建聚合列。
- spring aop expression支持多个表达式配置
- css用expression来区分只读文本框
- 使用RegularExpressionValidator验证控件时的验证功能及其验证表达式介绍
- CSS-expression实现图片缩放效果,兼容IE、FF
- Regular expression notation(正则表达式)
- 理解CSS中的数学表达式calc()
- php正则表达式,取img标记中任意属性,正则替换去掉或改变图片img标记中的任意属性