Я хотел бы объяснить мою ситуацию.
Я пишу веб-сайт, и одна из веб-страниц использует карту Google.
Веб-сайт cms
и использует ektron
Итак, я должен использовать ektron google map
, потому что он предоставляет некоторые функции, которые хотят клиенты.
Ektron
просто использует google map
и использует ajax для объединения со своей собственной логикой.
Я не знаю деталей, но всякий раз, когда я пытался изменить свойства этого ektron map
, мне нужно нажимать search
или zoom in
или zoom out
или перемещать карту.
Только после того, как я это сделаю, измененные свойства вступят в силу. Если нет, то нет.
Итак, я думаю о ярлыке и программно нажимаю кнопку search
на ektron map
.
Опять же, я программно добавляю элемент управления к panel
.
Я не могу написать document.ready
Потому что я обнаружил, что работает до загрузки карты.
Итак, я написал этот код, чтобы карта работала.
<script type="text/javascript">
$(window).load(function () {
$("#__GetAddr").click();
});
</script>
Это работает. __GetAddr
- это идентификатор кнопки поиска, и я щелкаю его после загрузки.
Но проблема началась, когда я использую его с хромом.
Я обнаружил, что $(window).load()
не работает в Chrome, Safari и Opera.
Я некоторое время гуглял, но не могу найти какого-либо убедительного ответа.
Есть ли какой-нибудь четкий альтернативный способ для этого работать в этих 3 браузерах, пока он все еще работает для IE7,8,9 и Firefox.
Большое спасибо.
Привет всем, у меня есть решение.
Думаю, это лучшее решение. но это работает.
<script type="text/javascript">
if (navigator.appName == "Microsoft Internet Explorer") {
$(window).load(function () { $("#__GetAddr").click(); });
}
else {
window.addEventListener('load', function () { $("#__GetAddr").click(); }, false);
}
</script>
Буду признателен за лучшее. : P