Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Problem z prototype.js + tinymce + scriptaculous w CakePHP
prond
post
Post #1





Grupa: Zarejestrowani
Postów: 254
Pomógł: 10
Dołączył: 8.11.2006
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Mam problem z działaniem tinyMCE razem z prototype.js i scriptaculous (w CakePHP)

W IE tinyMCE próbuje non-stop załadować plik blank.htm, co w rezultacie wywala mi kompletnie IE.
Ciekawe jest to, że za każdym wywołaniem zmienia się adres, z którego IE chce pobrać ten plik:
/js/vendors/tinymce/blank.htm
/js/js/vendors/tinymce/blank.htm
/js/js/js/vendors/tinymce/blank.htm
i tak do tragicznej śmierci IE.


Zgodnie z opisem znalezionym na http://bakery.cakephp.org/articles/view/140 mam następującą kolejność ładowania skryptów :

  1. <script type="text/javascript" src="/js/vendors/prototypejs/prototype.js"></script>
  2. <script type="text/javascript" src="/js/vendors/tinymce/tiny_mce.js"></script>
  3. <script type="text/javascript" src="/js/vendors/tinymce/tiny_mce_init.js"></script>
  4. <script type="text/javascript" src="/js/vendors/scriptaculous/scriptaculous.js"></script>


Plik tiny_mce_init.js zrobiłem też zgodnie ze wskazówkami w tym artykule (mode:"none" i convert_urls : false).

Po wrzuceniu plików .htaccess (dla CakePHP) naturalnie do edytora wpada cała strona główna z komunikatem, że nie ma stronki "/js/vendors/tinymce/blank.htm".

Jak chcecie zobaczyć skrypty to umieściłem to tymczasowo na http://cms.zajebisty.pl/news/add
Go to the top of the page
+Quote Post
revyag
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 2 258
Pomógł: 16
Dołączył: 21.09.2004
Skąd: Kielce

Ostrzeżenie: (0%)
-----


Hmm, raczej to nie jest problem javascriptowy, tylko konfiguracyjny, więc przenoszę na gotowe rozwiązania.
Go to the top of the page
+Quote Post
prond
post
Post #3





Grupa: Zarejestrowani
Postów: 254
Pomógł: 10
Dołączył: 8.11.2006
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Problem tkwi po stronie przeglądarki, w JavaScript ponieważ pod FF wszystko działa.

Jedynie IE próbuje ciągle ładować blank.htm

Odpowiada za to taki kod JS :

setupContent : function(editor_id) {
var inst = tinyMCE.instances[editor_id], i;
var doc = inst.getDoc();
var head = doc.getElementsByTagName('head').item(0);
var content = inst.startContent;

....

if (!head) {
window.setTimeout("tinyMCE.setupContent('" + editor_id + "');", 10);
return;
}
...

}

@revyag : Fakt, że wspomniałem o CakePHP i .htaccess jest istotny dlatego, że pod linkiem, który podałem jest taka właśnie konfiguracja i nie zaobserwujesz ładowania w kółko blank.htm, a jedynie wyświetlenie strony błędu.

Ten post edytował prond 22.02.2007, 12:03:57
Go to the top of the page
+Quote Post
revyag
post
Post #4





Grupa: Przyjaciele php.pl
Postów: 2 258
Pomógł: 16
Dołączył: 21.09.2004
Skąd: Kielce

Ostrzeżenie: (0%)
-----


No dobra, ale czy to Twój kod javascript ? Czy kod którejś biblioteki ?
Go to the top of the page
+Quote Post
prond
post
Post #5





Grupa: Zarejestrowani
Postów: 254
Pomógł: 10
Dołączył: 8.11.2006
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


To jest fragment kodu z tiny_mce_src.js.
Skoro metoda 'setupContent' nie przestaje się wywoływać w IE to zmienna

var head = doc.getElementsByTagName('head').item(0);

jest pusta.

Przypuszczam, że może to mieć coś wspólnego z rozszerzeniami do elementów DOM wprowadzonymi przez prototype.js.

Niestety sam JS nie koduje, tylko wykorzystuje gotowe rozwiązanie więc mogę się mylić.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 28.09.2025 - 03:35