Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [ZendFramework]ZF + JS = problem
Forum PHP.pl > Forum > PHP > Frameworki
wiciu010
Zaczalem prace z Zend Framework. Mam strukture katalogów:

/application
/controllers
/models
/views
/filters
/helpers
/scripts
/library
/public
/images
/scripts
/styles

w /public/styles stworzylem sobie plik site.css, ktory dołączyłem w /application/views/scripts/header.phtml za pomoca

Kod
<link rel="stylesheet" type="text/css" media="screen"
      href="<?php echo $this->baseUrl;?>/public/styles/site.css" />


w IndexController.php mam

Kod
$this->view->baseUrl = $this->_request->getBaseUrl();


Wszystko działa style dobrze wyświetla, chciałem więc w ten sam sposób dołączyć skrypt JavaScript

w /public/scripts stworzyłem plik menu.js i dołączyłem do /application/views/scripts/header.phtml za pomoca

Kod
&lt;script type="text/javascript" src="<?php echo $this->baseUrl;?>/public/scripts/menu.js"></script>


Jednak nie działa wyświetla mi treść skryptu na stronie ale nie reaguje na działania myskzi, może trzeba załadować jakaś pomoc do JS ?
phpion
Popełniasz jeden zasadniczy błąd nie do końca rozumiejąc ideę takiego rozkładu katalogów. Wszystkie elementy dostępne z poziomu przeglądarki powinny być umeiszczone w katalogu "public" czyli tworzysz w nim katalog "css", "js", "img". Do nich wrzucasz co potrzeba (style, pliki JavaScript, obrazki) natomiast później odwołujesz się do nich poprzez:
  1. <link rel="stylesheet" type="text/css" media="screen" href="/css/site.css" />

Zwróć uwagę, że ścieżka rozpoczyna się od /. Analogicznie wczytujesz JS (/js/skrypt.js) oraz grafiki (/img/obrazek.png). I na koniec ważna kwestia: DOCUMENT_ROOT powinien być ustawiony na katalog "public" - bez tej konfiguracji ani style, ani js, ani grafiki Ci się nie wyświetlą.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.