У меня возникла проблема с неправильной инициализацией iScroll в моем мобильном проекте jQuery. Плагин iScroll используется только на одной подстранице, чтобы разрешить горизонтальную прокрутку на большом изображении (необходимо, чтобы он работал на Android, так как их браузер не поддерживает его из коробки).iScroll не инициализируется до перезагрузки страницы
Плагин работает правильно, если вы напрямую обращаетесь к URL-адресу или обновляете его вручную. Но когда вы получаете доступ к нему через меню, из другой отправной точки, это не сработает. Я предполагаю, что это имеет какое-то отношение к загрузке ajax в мобильном устройстве jQuery, но установка данных-ajax = "false" на ссылку не является вариантом, так как мне нужно все, чтобы хорошо работать и как приложение для домашнего экрана в iOs (где ссылки с data-ajax = "false" открывается в новом окне Safari по какой-то странной причине).
В головной метке:
<script src="http://code.jquery.com/jquery-1.7.1.min.js"></script>
<script src="http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js
</script>
<script type="application/javascript" src="js/iscroll.js"></script>
<script type="text/javascript">
var myScroll;
function loaded() {
setTimeout(function() {
myScroll = new iScroll('wrapper');
refresh();
}, 100);
}
window.addEventListener('load', loaded, false);
</script>
В разделе Содержания:
<div data-role="content">
<div id="wrapper">
<div id="scroller">
<img src="images/turkart.png" />
</div>
</div>
</div>
Есть ли способ, которым я мог заставить обновление фактической страницы после того, как он загружен, или есть какие-либо другие Я заставляю инициализировать iScroll правильно?