#jquery #safari #show-hide
#jquery #safari #показать-скрыть
Вопрос:
Не очень опытный здесь. но нужно завершить мой веб-сайт. Моя проблема в том, что jquery, похоже, не позволяет моему сайту открыться в safari в первый раз. проблема, по-видимому, заключается в функции show и hide div, любая помощь была бы высоко оценена. http://www.designactivists.com/sem_4_2011/barebones / — это ссылка. код выглядит следующим образом. после удаления сайт открывается идеально.
<script language="javascript" src="jquery-1.5.2.min.js"></script>
<script language="javascript">
$(document).ready(function() {
$('#toggleButton').click(function() {
if ($('#navbar').is(":hidden"))
{
$('#navbar').slideDown("slow");
} else {
$('#navbar').slideUp("slow");
}
return false;
});
});
</script>
Комментарии:
1. Safari …. хм, пахнет как известная проблема. Попробуйте использовать $(window).load(функция() …
2. Или, возможно, попробуйте также $ (‘#ToggleButton’).live(‘click’, функция(){ …
3. Спасибо roXon за быстрый ответ. к сожалению, это не сработало. не могли бы вы предложить какие-либо альтернативы. я потратил недели, пытаясь найти решение.
4. Странно, у меня была такая же проблема с Safari, и загрузка окна решила мою проблему. Теперь я мобильный. Когда я вернусь домой, я посмотрю на это.
5. К вашему сведению, я использую mobile safari 533.1, и отсюда страница не откроется ни после дополнительных обновлений
Ответ №1:
Ключевое слово If IS — это проблема, которой вы могли бы достичь с помощью следующего кода:
$('#toggleButton').click(function(e) {
e.stopPropagation();
$('#navbar').slideToggle('slow');
});
К вашему сведению: также удалите href =»#» из кнопки переключения. Вместо этого используйте href=»javascript:void(0);». Это не должно выводить пользователя на первое место при нажатии на ссылку.