Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 11.08.2013, 03:13
Аватар для Toki
Интересующийся
Отправить личное сообщение для Toki Посмотреть профиль Найти все сообщения от Toki
 
Регистрация: 13.05.2013
Сообщений: 11

jquery перед загрузкой библиотеки
Есть элементарный спойлер, но jquery подключается в конце страницы, так(естественно не работает):
<html>
<head>
<script>
jQuery(document).ready(function(){
	jQuery('.spoiler-content').hide()

	jQuery('.spoiler').click(function(){
		jQuery(this).toggleClass("close").toggleClass("open").next().toggle()
	})
})
</script>
</head>
<body>
...
<script type="text/javascript" src="jquery.js"></script>
</body>
</html>

Если подключить jquery в <head>, то всё гут. Как переделать спойлер так, чтобы работало независимо от того, где подключен jquery
Ответить с цитированием
  #2 (permalink)  
Старый 11.08.2013, 05:43
Аватар для ruslan_mart
Профессор
Отправить личное сообщение для ruslan_mart Посмотреть профиль Найти все сообщения от ruslan_mart
 
Регистрация: 30.04.2012
Сообщений: 3,018

window.onload = function() {
    $('.spoiler-content').hide()
 
    $('.spoiler').click(function(){
        $(this).toggleClass("close").toggleClass("open").next().toggle()
    })
}
Ответить с цитированием
  #3 (permalink)  
Старый 11.08.2013, 09:28
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Toki, опусти скрипт спойлера ниже скрипта jQuery. Это элементарно, не?
Ответить с цитированием
  #4 (permalink)  
Старый 11.08.2013, 15:44
Аватар для Toki
Интересующийся
Отправить личное сообщение для Toki Посмотреть профиль Найти все сообщения от Toki
 
Регистрация: 13.05.2013
Сообщений: 11

Сообщение от Ruslan_xDD Посмотреть сообщение
window.onload = function() {
    $('.spoiler-content').hide()
 
    $('.spoiler').click(function(){
        $(this).toggleClass("close").toggleClass("open").next().toggle()
    })
}
Не работает. В консоле ошибок нет. Спойлер просто всегда открыт.

danik.js
С удовольствием бы, но нельзя.
Ответить с цитированием
  #5 (permalink)  
Старый 11.08.2013, 15:46
Аватар для ruslan_mart
Профессор
Отправить личное сообщение для ruslan_mart Посмотреть профиль Найти все сообщения от ruslan_mart
 
Регистрация: 30.04.2012
Сообщений: 3,018

window.addEventListener('DOMContentLoaded', function() {
    $('.spoiler-content').hide()
 
    $('.spoiler').click(function(){
        $(this).toggleClass("close").toggleClass("open").next().toggle();
    })
});
Ответить с цитированием
  #6 (permalink)  
Старый 11.08.2013, 16:08
Аватар для Toki
Интересующийся
Отправить личное сообщение для Toki Посмотреть профиль Найти все сообщения от Toki
 
Регистрация: 13.05.2013
Сообщений: 11

Ruslan_xDD, спасибо огромное, все работает
Ответить с цитированием
  #7 (permalink)  
Старый 11.08.2013, 16:15
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Не плохо бы проинформировать что способ не работает в IE8
Ответить с цитированием
  #8 (permalink)  
Старый 11.08.2013, 16:41
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

Toki,
Или поставить на класс <div class="spoiler-content" style="display:none"
Ответить с цитированием
  #9 (permalink)  
Старый 11.08.2013, 17:33
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Deff, и как это поможет?
Ответить с цитированием
  #10 (permalink)  
Старый 11.08.2013, 17:41
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

Сообщение от danik.js
Deff, и как это поможет?
Поможет скрыть спойлер на начальном этапе до подключения скрипта после DOMContentLoaded
При всяких слайдерах и больших фонах так и будет точать открытым
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
пауза перед .hide Jquery ufaclub jQuery 13 20.03.2017 08:07
Обработка изображений перед загрузкой KupueIIIKo Общие вопросы Javascript 30 02.10.2013 23:52
Помогите с загрузкой контента с jQuery exhang jQuery 2 12.04.2012 16:04
Необходимы советы как убирать не нужное из библиотеки jquery. dr_gluk jQuery 13 18.07.2011 12:05
Изменение HEAD перед загрузкой BODY Temchik (X)HTML/CSS 41 15.11.2009 22:06