Autor | Zpráva | ||
---|---|---|---|
Lukerus Profil |
#1 · Zasláno: 6. 5. 2012, 14:59:30 · Upravil/a: Lukerus
Dobrý den,
už jsem úplně v koncích. Tvořím web pomocí jQuery a jQuery UI a když to odzkouším na domácím serveru, funguje bezvadně, když to ale nahraji na webzdarma, tak to nefunguje (http://musica-candida.wz.cz/index.php). Situace je asi taková: Mám stránku, v té mám menu novinek, které používá jQuery a celé menu vkládám pomocí PHP (include()). Když ale jQuery načtu v hlavičce stránky, tak mi menu nefunguje, kdž ho ale vložím do souboru, který includuju, funguje bez problému. Na této stránce jQuery UI nepoužívám. Pak mám další stránku s nějakým článkem a tam nefunguje jQuery ani jQuery UI, ať ho načtu kdekoliv. Říkal jsem si, že problém bude v tom, že ho načítám dvakrát (jednou v menu novinek a jednou v hlavičce stránky), tím to ale není. Prosím poraďte, je to pro mě záhada, jelikož doma to funguje... Díky za rady Lukáš Červený PS: Momentálně na stránkách mám ještě staré novinky, které jQuery UI nepoužívají. JQuery UI potřebuji kvůli dialogovým oknům. CSS mám vlastní upravené, samotné jádro používám z googlu. Hlavička stránky s článkem: <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <title>Musica Candida | Článek</title> <link rel="shortcut icon" href="favicon.ico"> <script language="javascript" type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script> <script language="javascript" type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.18/jquery-ui.min.js"></script> <link rel="stylesheet" href="./css/ui-lightness/jquery-ui-1.8.20.custom.css" type="text/css" /> <link rel="stylesheet" href="menu.css" type="text/css" /> <link rel="stylesheet" href="novinky.css" type="text/css" /> <link rel="stylesheet" href="styl.css" type="text/css" /> <script type="text/javascript" src="obrazky.js"></script> </head> Funkce, která nefunguje: <script type="text/javascript"> function validace(formular) { if (formular.jmeno.value=='') { var $dialog = $('<div></div>') .html('Musíte vyplnit vaše jméno!') .dialog({ autoOpen: true, title: 'Varování', resizable: false, show: { effect: 'drop', direction: "up"}, buttons: { "Ok": function() { $(this).dialog("close"); } } }); formular.jmeno.focus(); return false; } else if (formular.komentar.value=='') { var $dialog = $('<div></div>') .html('Musíte napsat nějaký komentář!') .dialog({ autoOpen: true, title: 'Varování', resizable: false, show: { effect: 'drop', direction: "up"}, buttons: { "Ok": function() { $(this).dialog("close"); } } }); formular.komentar.focus(); return false; } else return true; } </script Teď mě to trklo!! Omlouvám se za spam. Chybí mi tam $(document).ready() |
||
Chamurappi Profil |
#2 · Zasláno: 6. 5. 2012, 15:28:15
Reaguji na Lukeruse:
„Momentálně na stránkách mám ještě staré novinky, které jQuery UI nepoužívají.“ Hodila by se spíš živá ukázka toho, co nefunguje. „JQuery UI potřebuji kvůli dialogovým oknům.“ Určitě potřebuješ dvousetkilovou knihovnu kvůli takové drobnosti? |
||
Lukerus Profil |
#3 · Zasláno: 6. 5. 2012, 21:32:07
Přijde mi to jako nejjednodušší řešení. Když jsem to dělal sám, dialogové okno mi poskakovalo po stránce, nešlo pořádně přetahovat... Nehledě na to, že knihovnu na serveru vůbec nahranou nemám
|
||
panther Profil |
#4 · Zasláno: 7. 5. 2012, 07:40:36
Lukerus:
„Když jsem to dělal sám, dialogové okno mi poskakovalo po stránce, nešlo pořádně přetahovat“ zkus toto řešení dodat, třeba půjde upravit, aby se chovalo normálněji. „Nehledě na to, že knihovnu na serveru vůbec nahranou nemám“ nezáleží na tom, zda ji máš u sebe nebo ne. Jde o to, že stránka při načítání na načtení této knihovny čeká. |
||
_es Profil |
#5 · Zasláno: 7. 5. 2012, 09:06:34
Lukerus:
„Říkal jsem si, že problém bude v tom, že ho načítám dvakrát (jednou v menu novinek a jednou v hlavičce stránky), tím to ale není.“ To je zle, bez ohľadu na to, či si myslíš, či to „tým je“, alebo nie je. Prehliadač zaujíma výsledný kód, nie to, akým spôsobom bol vyrobený. Na čo tam máš dva frameworky, je to obvyklý problém, že sa navzájom „bijú“. Skontroluj si, či sú funkčné externé súbory, napríklad namiesto "./fonty/fonty.css" sa načítava nejaká chybová stránka.
|
||
Chamurappi Profil |
#6 · Zasláno: 7. 5. 2012, 10:10:37
Reaguji na Lukeruse:
„Přijde mi to jako nejjednodušší řešení.“ Koukám na ten uvedený kód a říkám si, jestli nejjednodušší není spíš alert . Zobrazuješ jen okénko s krátkým textem a tlačítkem Ok …
„nešlo pořádně přetahovat“ To je průšvih, no. Když mi nějaká stránka vynadá, že jsem nevyplnil správně e-mail, tak první, co udělám, je, že zkusím tu hlášku přetáhnout pryč :-) |
||
Lukerus Profil |
panther:
Dialog jsem dělal sám, na přetahování jsem si našel js skript. Problém byl ale v tom, že jsem div, který sloužil jako hláška měl display:none a pak jsem ho ukázal pomocí jQuery. Když se ale ukázal, zobrazil se pod stránkou nebo nad stránkou, podle toho kam jsem ho umístil. když jsem mu nastavil přesnou pozici, při kliknutí na něj skočil někam do pryč a už jsem ho nenašel. _es: Máš pravdu, fonty.css se načítaly zbytečně, protože jsem to stejně nakonec smazal. Nyní už je to v pořádku. Chamurappi: Alert jsem tam měl, ale přišlo mi to, že to nesedí ke vzhledu stránky. Vzhled dialogu ještě pozměním a nehodlám ho používat jen pro validaci formulářů. Vzhledem k tomu, že mi je 13 a teprve se všechno (javascript, jquery, php i pc grafiku) učím, tak si myslím, že takové stránky s administračním systémem jsou docela dobrý výkon. Celé stránky budu ještě více "zdynamičťovat" a toto ještě není úplný výsledek!!! To, že se mi tloukly dva frameworky je pravda - figurovalo tam ještě mootools, ale rozhodl jsem se pro jiné řešení právě kvůli popsaným problémům. |
||
Časová prodleva: 12 let
|
0