我如何从IE隐藏javascript的一部分
how can I hide a part of javascript from IE
这是我打开jquery对话框的javascript函数。
('#dialog').append(iframe).appendTo("body").dialog({
autoOpen: false,
modal: true,
resizable: false,
show: 'slide',
width: 800,
height: 700,
close: function() {
}
});
$('#dialog_click').click("callback",function() {
$('#dialog').dialog('open');
return false;
});
如何在IE中隐藏show: 'slide,
部件
var options = {
autoOpen: false,
modal: true,
resizable: false,
width: 800,
height: 700,
close: function() {
}
};
if ( ! $.browser.msie){
options ['show'] = 'slide';
}
$('#dialog').append(iframe).appendTo("body").dialog(options);
try this
if ( ! $.browser.msie){
$( "#dialog" ).dialog( "option", "show", "slide" )
}
jquery已从version>= 1.9删除对jquery .browser.msie的支持
var opts = {
autoOpen : false,
modal : true,
resizable : false,
show : 'slide',
width : 800,
height : 700,
close : function() {
}
};
if (!/msie/.test(window.navigator.userAgent)) {
opts.show = 'slide';
}
('#dialog').append(iframe).appendTo("body").dialog(opts);
$('#dialog_click').click("callback", function() {
$('#dialog').dialog('open');
return false;
});
$('#dialog').append(iframe).appendTo("body").dialog({
autoOpen: false,
modal: true,
resizable: false,
width: 800,
height: 700,
close: function() {
}
});
if(!$.browser.msie) {
$( "#dialog" ).dialog( "option", "show", "slide" );
}
对此有几个解决方案(条件注释整个脚本,稍后更改属性等),但没有人发布了一个解决方案,完全符合您的要求:仅在IE
中排除javascript的一部分。
然后看看这个:
('#dialog').append(iframe).appendTo("body").dialog({
autoOpen: false,
modal: true,
resizable: false,
/*@cc_on @*/
/*@if (true)
@else @*/
show: 'slide',
/*@end @*/
width: 800,
height: 700,
close: function() {
}
});
$('#dialog_click').click("callback",function() {
$('#dialog').dialog('open');
return false;
});
IE
不包含show: 'slide',
,而non-IE
浏览器不会读取 Conditional Compilation Statements
,因此条件将落在(未注释的)else部分。
阅读更多关于条件编译语句
你可以做几件事。
首先是条件注释,即
<!--[if !IE ]>
<script>
$('#dialog').append(iframe).appendTo("body").dialog({
autoOpen: false,
modal: true,
resizable: false,
show: 'slide',
width: 800,
height: 700,
close: function() {
}
});
$('#dialog_click').click("callback",function() {
$('#dialog').dialog('open');
return false;
});
</script>
<![endif]-->
或者你可以检查jquery浏览器变量,正如其他人所指出的。
如果你是这样做的,你真的想要针对旧版本的IE你可以使用一些特定的函数(如attachEvent)
相关文章:
- 如何使用JavaScript提取此url的一部分
- 通过JavaScript设置的表单字段的值不会作为$_POST的一部分传递给PHP脚本
- href没有在每次单击li的一部分时加载链接.使用javascript使整个li可以点击
- 是否可以将此javascript代码(或其中的一部分)移动到单独的文件中,而不是内联
- Javascript 解包元素的一部分
- JQuery/JavaScript - 突出显示输入或文本区域中的一部分文本
- 如何知道找到的单词是字符串的一部分还是JavaScript中的函数调用
- 将外部javascript文件视为Aspx页面的一部分
- JavaScript未更新$scope变量的一部分
- 当量词是模式的一部分时,JavaScript中的RegExp
- 返回javascript中regex字符串的一部分
- javascript:如何首先加载页面的一部分
- 在表单提交将DOM的一部分替换为分部之后,我应该将ajax成功绑定到什么来使我的javascript工作
- JavaScript:删除一部分代码,并在单击时删除一个元素
- javaScript代码在一个单独的文件中工作,但不是更大文件的一部分
- JavaScript Regexp仅匹配字符串的一部分
- Javascript语句的哪一部分是字面意思
- 撇号标记在javascript字符串中与Backslash一起发送,该字符串使用ajax作为json对象的一部分发送到p
- 如何返回“;成品“;javascript代码的一部分
- JavaScript:将字符串的一部分放入DOM容器中,保存溢出