Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 16.01.2012, 19:13
Интересующийся
Отправить личное сообщение для Greider Посмотреть профиль Найти все сообщения от Greider
 
Регистрация: 30.09.2010
Сообщений: 20

Конфликт jQuery c Prototype Framework
Стоит у меня на сайте древовидное меню jquery.treeview, все работает:
Вот так оно подключается:
<script type="text/javascript" src="jquery.min.js"></script>
	<script type="text/javascript" src="lib/jquery.cookie.js"></script>
	<script type="text/javascript" src="jquery.treeview.js"></script>
	<script type="text/javascript" src="demo.js"></script>

Решил поставить скрипт для красивого показа картинок - известный Litebox. Читаю описание, дописываю значит строчки:
<script type="text/javascript" src="js/prototype.js"></script>
<script type="text/javascript" src="js/scriptaculous.js?load=effects,builder"></script>
<script type="text/javascript" src="js/lightbox.js"></script>


Лайтбокс при этом работает нормально, а вот древовидное меню перестает работать (полностью раскрывается), а файрфокс выдает ошибку:
Ошибка: $("#navigation") is null Источник: demo.js Строка: 4
В этом demo.js всего лишь одна функция, которая собсна и запускает меню:
$(document).ready(function(){
	// first example
	$("#navigation").treeview({
		collapsed: true,
		animated:"normal",
		unique: true,
		persist: "location"
	});
	// second example
	$("#browser").treeview({
		animated:"normal",
		persist: "cookie"
	});
});



Если подключаю Лайтбокс ПЕРЕД древовидным меню - то меню работает, а вот Лайтбокс нет! Браузер пишет следующее:
Ошибка: element.dispatchEvent is not a function Источник: /js/prototype.js Строка: 5733

Глубины моего понимания яваскрипта совершенно не хватает, чтобы понять происходящее, не вижу связи между ошибками... Понимаю только, что какой-то конфликт.
Может кто поможет?
Ответить с цитированием
  #2 (permalink)  
Старый 16.01.2012, 20:00
Профессор
Отправить личное сообщение для DjDiablo Посмотреть профиль Найти все сообщения от DjDiablo
 
Регистрация: 04.02.2011
Сообщений: 1,815

На фига вам вообще прототайп то понадобился, неужто лайт бокса на jquery не нашли ?

И прототайп и jquery используют функцию $() отсюда и проблема
возможный вариант решения
Используйте к примеру
jQuery.noConflict();
и когда вам нужен jQuery обращайтесь не $ , а $jQuery в том числе и в demo.js и в плагинах jquery.

Пример продвинутого (противоконфликтного ) demo.js
jQuery(function($) { 
	$("#navigation").treeview({
		collapsed: true,
		animated:"normal",
		unique: true,
		persist: "location"
	});
	// second example
	$("#browser").treeview({
		animated:"normal",
		persist: "cookie"
	});
});
__________________
Лучше калымить в гандурасе чем гандурасить на колыме

Последний раз редактировалось DjDiablo, 16.01.2012 в 20:36.
Ответить с цитированием
  #3 (permalink)  
Старый 16.01.2012, 21:44
Аватар для can3p
Аспирант
Отправить личное сообщение для can3p Посмотреть профиль Найти все сообщения от can3p
 
Регистрация: 02.11.2009
Сообщений: 40

http://fancybox.net/
Ответить с цитированием
  #4 (permalink)  
Старый 16.01.2012, 22:19
Интересующийся
Отправить личное сообщение для Greider Посмотреть профиль Найти все сообщения от Greider
 
Регистрация: 30.09.2010
Сообщений: 20

Сообщение от DjDiablo Посмотреть сообщение
На фига вам вообще прототайп то понадобился, неужто лайт бокса на jquery не нашли ?
Да как-то в голову не пришло поискать...
Сообщение от DjDiablo Посмотреть сообщение
и когда вам нужен jQuery обращайтесь не $ , а $jQuery в том числе и в demo.js и в плагинах jquery.
Спасибо за совет!
Сообщение от can3p Посмотреть сообщение
http://fancybox.net/
Спасибо, тоже вариант )
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Prototype to jQuery Awilum Библиотеки/Тулкиты/Фреймворки 4 12.10.2011 15:28
Конфликт с jquery stvord Элементы интерфейса 3 01.09.2011 22:33
Конфликт Jquery и Mootools Bangoo jQuery 1 28.03.2011 13:03
Перевести код с prototype в jquery alexey_samara jQuery 2 07.12.2010 16:52
prototype + jquery + non conflict - отказало return false Amateur Библиотеки/Тулкиты/Фреймворки 2 20.03.2010 09:49