Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [jQuery] skryptozakładka i obrazek
Forum PHP.pl > Forum > Po stronie przeglądarki > JavaScript
JoShiMa
Chciałam za pomocą skryptozakładki obsłużyć w pewien sposób (mniejsza o to jak) obrazek wyświetlony w przeglądarce. Moja skryptozakładka dołącza do dokumentu skrypt z definicją jQ oraz skrypt napisany w jQ, za pomocą którego chciałam przeprowadzić pewne manipulacje. Niestety funkcje jQ nie działają.

O ile działa np:
  1. el=document.createElement('div');
  2. el.setAttribute('id','contents');
  3. document.body.appendChild(el);


ale już nie działa:
  1. $('body').append('<div id="ob-contents"></div>');


Coś źle robię, czy tak po prostu się nie da i będę zmuszona napisać ten skrypt w czystym JS?

Dodam, że FB nie zgłasza żadnego błędu, a jQ naprawdę się dołącza tam gdzie trzeba.
nospor
Może pokaż coś więcej, jakiś bardziej dokładny kod, bo to co pokazałaś na chwilę obecną to ja tak często robię i mi działa.

ps: w js dałaś ID contents a w JQ ob-contents wink.gif
JoShiMa
Cytat(nospor @ 28.04.2011, 11:53:08 ) *
ps: w js dałaś ID contents a w JQ ob-contents wink.gif


No to akurat nie ma znaczenia, że tam jest inne id. Zwyczajnie w pierwszym przypadku do DOM dodaje się ten div a w drugim się nie dodaje i nie pojawia się żaden błąd. Naprawdę nie ma więcej kodu. CO mam pokazać? Skryptozakładkę, która dodaje skrypty?

Oczywiście jak tą skryptozakładką potraktować "normalny" dokument html, to działa jak trzeba. Jeśli zaś jest to obrazek wyświetlony w przeglądarce to jQ nie działa.

nospor
Ja poprostu nie wiem co masz na myśli pisząc "skryptozakładka".

Mi Twoj kod działa i działał zawsze gdy pisałem sam własne - tyle wiem smile.gif
JoShiMa
Cytat(nospor @ 28.04.2011, 12:02:49 ) *
Ja poprostu nie wiem co masz na myśli pisząc "skryptozakładka".


Skryptozakładka inaczej bookmarklet, favlet, favelet

Ja wiem, ze jak sie ręcznie do htmla wstawi taki skrypt to działa, ale ja nie piszę o dokumencie html, tylko o obrazku wyświetlonym w przeglądarce. Np takim


nospor
Przecież obrazek w przeglądarce nie zawiera kodu html a co za tym idzie nie zawiera BODY. Dziwie się, że w ogóle czysty js ci działa.
JoShiMa
Cytat(nospor @ 28.04.2011, 12:10:29 ) *
Przecież obrazek w przeglądarce nie zawiera kodu html a co za tym idzie nie zawiera BODY. Dziwie się, że w ogóle czysty js ci działa.

No ja też się dziwię smile.gif ale FireBug pokazuje, ze działa, znaczy pojawiają się elementy dodane czystym JS.
nospor
To sprawdź jeszcze czy działa na każdej przeglądarce smile.gif
JoShiMa
Sprawdziłam pod FF i pod IE8
Kemsan
Proszę bardzo, działający skrypt na 100%:
[JAVASCRIPT] pobierz, plaintext
  1. java script:(function(){
  2. var jQ = document.createElement('script');
  3. jQ.type = 'text/javascript';
  4. jQ.onload=myFunction;
  5. jQ.src = 'http://ajax.googleapis.com/ajax/libs/jquery/1.4.1/jquery.min.js';
  6. document.getElementsByTagName('head')[0].appendChild(jQ);
  7. function myFunction(){
  8. $('body').append('<div id="ob-contents"> </div>');
  9. }
  10.  
  11. })();
[JAVASCRIPT] pobierz, plaintext


( Dodaje, nawet przy 'headerze obrazkowym' - sprawdzone tylko na FF4, Ubuntu 11.04 )
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.