我希望有一些新鲜的眼睛可以看到我失踪的东西。我有一个页面(在WordPress网站中),在Firefox,Chrome,Opera & Safari中运行良好,但不在IE中。为了查看它是否执行了任何操作,我在document.ready函数的第一行中放置了一个警报,并且它显示在除IE之外的所有浏览器中(在IE7和IE9上尝试过)。为什么javascript/jquery会在所有浏览器中执行但IE?
这里是document.ready函数。任何人都可以看到任何理由,为什么这不会在IE中执行?
<!-- language: lang-js -->
$(document).ready(function() {
alert('in .ready function');
//$("input:text:visible:first").focus();
$(window).scrollTop();
// $(this).scrollTop(0);
$("#u_phone").mask("(999) 999-9999");
$('#fab_result').hide();
$('#fab_header').hide();
$('#optIn').hide();
$('div.message').show();
$('#mymap').show();
$("#my_form").validate();
if ($("#u_firstname").length > 0) {
$("#u_firstname").rules("add", {
required: true,
minlength: 5,
messages: {
required: " This field is required "
}
});
}
if ($("#u_email").length > 0) {
$("#u_email").rules("add", {
required: true,
email: true,
messages: {
required: " This field is required "
}
});
}
if ($("#u_phone").length > 0) {
$("#u_phone").rules("add", {
required: true,
messages: {
required: " This field is required "
}
});
}
if ($("#u_custom_20").length > 0) {
$("#u_custom_20").rules("add", {
required: true,
minlength: 3,
messages: {
required: " This field is required "
}
});
}
var mapsterOpts = {
fillOpacity: 0.5,
render_highlight: {
fillColor: '2aff00',
stroke: true,
strokeWidth: 2
},
render_select: {
fillColor: 'ff000c',
stroke: false
},
fadeInterval: 5000,
isSelectable: false
},
mainOpts = $.extend({}, mapsterOpts, {
mapKey: 'province',
onClick: clickMain
}),
detailOpts = $.extend({}, mapsterOpts, {
onClick: clickDetail
});
$('#canada-map').mapster(mainOpts);
});
你是什么意思不执行?在顶部火警?你能从IE的错误控制台粘贴一些信息吗? – Fresheyeball 2012-03-27 04:15:50
启用脚本调试。在页面刷新上查找语法错误。 – 2012-03-27 04:17:06
您的脚本是否会创建一个在您的IE浏览器中不起作用的画布标签?如果是这样的话,将其包装在条件标签中以检查浏览器 – mikevoermans 2012-03-27 04:26:32