Magento - Javascripte v navzkrižu ena z drugo
 
blindek 23. jun 2010 10:19:45 Pridružen od:
11. dec 2009
924 objav
849 240 22
#1

Na naslovnico spletne trgovine, ki jo trenutno izdelujem, http://makspro.eliteplaying.com/index.php/ sem dodal JS skripto za rotacijo bannerjev (to je ta na vrhu content dela).



Ta skripta za delovanje potrebuje naslednji dve vrstici:


<script type="text/javascript" src="http://makspro.eliteplaying.com/banners/js/jquery.js"></script>
<script type="text/javascript" src="http://makspro.eliteplaying.com/banners/js/scripts.js"></script>

Problem pa je, ker se ta JS skripta tepe z ostalimi JS skriptami magento prednastavljenimi skriptami. Sedaj sem nastavil tako, da doda zgornji dve vrstici za aktivacijo in zagon JSja samo na index.php strani, ostale podstrani teh skript nimajo in vse deluje tako kot mora.



Recimo na tej podstrani http://makspro.eliteplaying.com/index.php/bela-tehnika.html lahko v tem velikem search baru na modrem pašku zasledite, da prikaže znotraj napis "Iskanje po celotni trgovini..." potem "Računalništvo" gumb v vodoravnem menuju ima drop down še ostalih podkategorij,.... To pa vse zato, ker so za te stvari nastavljenej javaskript skripte. Na prvi strani pa zgoraj naštete stvari NE delujejo.



Predvidevam, da so .js skripte v navzkrižu ena z drugo. Kaj lahko kaj naredim na hitro za to porpvaiti ali mislite, da so kakšne klase ali kaj podobnega znotraj skripte od bannerja ki so enake z ostalimi JS skriptami?



Da rotacija banerjev deluje samo na prvi strani sem dodal v app/design/frontend/default/handbags/template/page/html/head.phtml


<?php
$uri = $_SERVER['REQUEST_URI'];
if ($uri == "/" || $uri == "/index.php/" || $uri == "/index.php" ) {

echo '
<script type="text/javascript" src="http://makspro.eliteplaying.com/banners/js/jquery.js"></script>
<script type="text/javascript" src="http://makspro.eliteplaying.com/banners/js/scripts.js"></script>'
;

} else {
}
?>
všeč(0) ni všeč(0) spam(0)
 
blindek 23. jun 2010 10:23:49 Pridružen od:
11. dec 2009
924 objav
849 240 22
#2

Moderatorjem se opravičujem, ponesreči na mesto v temo "Programiranje" dal v tole. Če je laho kateri moderator tako prijazen in temo prestavi v "Programiranje".


všeč(0) ni všeč(0) spam(0)
 
perunpro 23. jun 2010 10:52:15 Pridružen od:
23. maj 2008
3360 objav
2892 217 19
#3

blindek:

Predvidevam, da so .js skripte v navzkrižu ena z drugo. Kaj lahko kaj naredim na hitro za to porpvaiti ali mislite, da so kakšne klase ali kaj podobnega znotraj skripte od bannerja ki so enake z ostalimi JS skriptami?




Poskusaj klicati namesto znaka "#" za Jquery kar takole "jQuery"


všeč(0) ni všeč(0) spam(0)
 
blindek 23. jun 2010 11:15:06 Pridružen od:
11. dec 2009
924 objav
849 240 22
#4

To misliš v html kodi ali kje? Namreč samo na enem mestu kliče z "#" to je na gumbih "1" , "2" , "3" za ročno rotacijo bannerjev. Ostale skripte pa ne.



Problem ni pri bannerjih ampak pri ostalih magento skriptah. Banner JS skripta dela, ostale ne delajo od magenta. Namreč izgleda da banner je močnejši in povozi ostale JS skripte.


všeč(0) ni všeč(0) spam(0)
 
perunpro 23. jun 2010 11:28:53 Pridružen od:
23. maj 2008
3360 objav
2892 217 19
#5

Tocno tam, s tem klices jQuery, ampak se zelo verjetno tepe s ostalimi. Poskusi kot sem ti napisal.


všeč(0) ni všeč(0) spam(0)
 
Roky 23. jun 2010 12:50:18 Pridružen od:
9. apr 2008
2506 objav
3240 335 107
#6

Za jQuery dodaj, Jquery.noconflict(); (neki takega), v http://makspro.eliteplaying.com/banners/js/scripts.js pa naredi replace('$(', 'jQuery(', $javascriptKoda); in je problem rešen.


všeč(0) ni všeč(0) spam(0)
rok.meglic@gmail.com - 031 492 148
 
blindek 23. jun 2010 13:52:25 Pridružen od:
11. dec 2009
924 objav
849 240 22
#7

V http://makspro.eliteplaying.com/index.php/

Sem tam pri gumbih "1" "2" "3" sedaj # zamenjal z "jQuery" se pravi so linki takole "http://makspro.eliteplaying.com/index.php/jQuery" skripta se ni pokvarila oziroma banner rotacija še zmeraj deluje, samo ostale skripte pa še ne.



Sem upošteval tudi Roky-jev nasvet in v http://makspro.eliteplaying.com/banners/js/jquery.js zamenjal vse jQuery z javascriptKoda ampak tudi to še ni odpravilo.



@Roky edino tega mi ne uspe oziroma ne razumem kako Jquery.noconflict(); ? A to da dodam tam kjer je bil prej "#" in je sedaj "jQuery" ali kako?


všeč(0) ni všeč(0) spam(0)
 
Roky 23. jun 2010 17:09:57 Pridružen od:
9. apr 2008
2506 objav
3240 335 107
#8

@blindek, poglej si http://zazivali.si/js/jquery/jquery.js, čist zadnjo vrstico.


všeč(0) ni všeč(0) spam(0)
rok.meglic@gmail.com - 031 492 148
 
blindek 23. jun 2010 18:44:54 Pridružen od:
11. dec 2009
924 objav
849 240 22
#9

V obe skripti sem na konec dodal jQuery.noConflict(); ali stvar še vedno ne deluje.



http://makspro.eliteplaying.com/banners/js/jquery.js

http://makspro.eliteplaying.com/banners/js/scripts.js



Mogoče še kakšna ideja kaj bi lahko še bilo narobe in je potrebno spremeniti?


všeč(0) ni všeč(0) spam(0)
 
SpinX 23. jun 2010 18:53:19 Pridružen od:
17. mar 2007
2618 objav
1720 190 20
#10

Jaz sem dodal:

var $j = jQuery.noConflict();



na koncu jquery kode. potem namesto $(); uporabljaš $j();


všeč(0) ni všeč(0) spam(0)
Developer? Bi delal v kul podjetju ? http://dlabs.si/jobs
 
 

🔒 Za odgovor na to temo se moraš prijaviti.

Prijavi se