PDA

Zobacz pełną wersję : jQuery w Joomla



emzetka
26-02-2011, 11:47
Witam. Czytałem trochę o tym i dowiedziałem się, że aby używać jQuery muszę jakoś to pogodzić z MooTools. Dlatego też zainstalowałem dodatek SC jQuery, który na takie coś pozwala. Uruchomiłem go, skonfigurowałem tak jak było napisane żeby to zrobić. Następnie stworzyłem nowy plik sample.js w folderze "js" w moim szablonie, a w nim zamieściłem:

$(document).ready(function(){

$('h2').click(function(){
$(this).html('one, two, ...');
});

});


Natomiast do pliku index.php w sekcji <head> dodałem:

<?php
$document = &JFactory::getDocument();
$document->addScript( 'templates/moj_szablon/js/sample.js' );
?>

Jednak po zapisaniu całości i odświeżeniu strony skrypt ten nie działa. To znaczy, gdy klikam w nagłówek <h2>, to nie zmienia on swojej zawartości. W firebugu po rozwinięciu tego skryptu wyświetla się:


<?xml version="1.0" encoding="ISO-8859-2"?>
2<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
3 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
4<html xmlns="http://www.w3.org/1999/xhtml" lang="pl" xml:lang="pl">
5<head>
6<title>Nie znaleziono obiektu!</title>
7<link rev="made" href="mailto:postmaster@localhost" />
8<style type="text/css"><!--/*--><![CDATA[/*><!--*/
9 body { color: #000000; background-color: #FFFFFF; }
10 a:link { color: #0000CC; }
11 p, address {margin-left: 3em;}
12 span {font-size: smaller;}
13/*]]>*/--></style>
14</head>
15
16<body>
17<h1>Nie znaleziono obiektu!</h1>
18<p>
19
20
21 Nie znaleziono ¿±danego URLa na tym serwerze.
22
23
24
25 Odno¶nik na
26 <a href="http://localhost/dream/">referuj±cej stronie
27 </a> wydaje siê byæ nieprawid³owy lub nieaktualny. Poinformuj autora
28 <a href="http://localhost/dream/">tej strony</a>
29 o problemie.
30
31
32
33</p>
34<p>
35Je¶li my¶lisz, ¿e jest to b³±d tego serwera, skontaktuj siê z
36<a href="mailto:postmaster@localhost">administratorem</a>.
37
38</p>
39
40<h2>Error 404</h2>
41<address>
42 <a href="/">localhost</a><br />
43
44 <span>02/26/11 11:29:36<br />
45 Apache/2.2.14 (Win32) DAV/2 mod_ssl/2.2.14 OpenSSL/0.9.8l mod_autoindex_color PHP/5.3.1 mod_apreq2-20090110/2.7.1 mod_perl/2.0.4 Perl/v5.10.1</span>
46</address>
47</body>
48</html>

Co może być przyczyną nie działania ?

Proszę o pomoc.
Pozdrawiam.

keran
26-02-2011, 17:16
poszukaj scriptgator'a

emzetka
26-02-2011, 17:57
To niestety nic nie dało. Właściwie scriptegator ma takie samo działanie jak SC jQuery, czyli dodaje jQuery do szablonu. Gdzie może być błąd ?

keran
26-02-2011, 18:34
sprobuj dodac:
$.noConflict();
jQuery(function($) {
........kod.......

});

emzetka
27-02-2011, 17:21
Niestety nadal nie pomaga ;/

palyga007
27-02-2011, 22:42
możesz podesłać ten szablon?

emzetka
28-02-2011, 07:37
Szablon pobrałem z kursu "Ubieramy Joomla!". Oto link do niego: http://blog.safistudio.pl/pliki/kursy/szablon/moj_szablon.zip.

pawelSafiStudio
28-02-2011, 09:59
@keran dobrze Ci podpowiedzial. Z jakiej wersji jQuery korzystasz ? Dobrze by było jakbyś miał wersje 1.3 lub nowsza.

Tutaj masz krótki opis:

http://davidwalsh.name/jquery-mootools

emzetka
28-02-2011, 13:23
Korzystam z wersji 1.4.4. Albo coś źle robię, albo nie mam pojęcia, ale zrobiłem wszystko jak w linku http://davidwalsh.name/jquery-mootools, a mimo to nadal nie działa. Może byłby ktoś w stanie ściągnąć szablon http://blog.safistudio.pl/pliki/kursy/szablon/moj_szablon.zip (http://blog.safistudio.pl/pliki/kursy/szablon/moj_szablon.zip) i dodać do niego prosty i działający kod jQuery (np. zmieniający kolor czcionki) abym zobaczył dokładnie jak to ma być zrobione ?

pawelSafiStudio
28-02-2011, 14:32
Ja zintegrowałem jQuery wg wskazówki, którą podałem Ci, jako link i wszystko hula aż miło. Nie wiem dlaczego Tobie nie działa. Może masz jeszcze jakieś inne komponenty, które wywołują błąd JS ?

W załączniku ten sam szablon z załączonym jQuery 1.3.2 - nowszej nie chciało mi się już pobierać, tą wersję miałem pod ręką. Dodany skrypt zmienia kolor linków na szary.

3744

Pozdrawiam.

Nonilion
31-03-2011, 21:48
Witam

Mam pytanie, czy skrypt js dla Joomli jest niezbędny, tak szczerze to co on robi, może zamiast JQuery noConfilt włączać, to wyłączyć JS Joomli ?

Jdwind
11-04-2011, 00:42
@emzetka - zamień znaki dolara $ na napis: jQuery w funcji.

kodhtml
11-04-2011, 18:55
Moim zdaniem dodawanie jQuery do Joomli, bez konkretnych powodów jest nieoptymalne. O ile kwestię kompatybilności można rozwiązać, to używanie dwóch bibliotek jest mało optymalne. Czy funkcje, które chcesz uzyskać za pomocą jQuery nie można zrobić przy pomocy Mootools? dokumentacja mootools-> http://mootools.net/docs/