![]() ![]() |
Post
#21
|
|
|
Grupa: Zarejestrowani Postów: 59 Pomógł: 0 Dołączył: 22.06.2008 Ostrzeżenie: (0%)
|
nie bardzo rozumiem gdzie tam jest odpowiedź.
U mnie funkcja działa dobrze ale jak wywołam ją ręcznie z konsoli. Jeśli uruchomię komponent to plik background.js wskazuje błąd w miejscu getJSON. funkcja napisana wyżej. jak dam function show($) to przynajmniej nie czepia sie o jQuery jak nie dam to się czepia. |
|
|
|
Post
#22
|
|
|
Grupa: Zarejestrowani Postów: 1 332 Pomógł: 294 Dołączył: 12.10.2008 Skąd: Olkusz Ostrzeżenie: (0%)
|
dawno nie pisałem pluginów pod przeglądarki, ale możesz także korzystać z narzędzi deweloperskich tak jak na stronie... dodatkowo jQuery masz podpinane pod globalny obiekt window który masz w "ramce", nie jest on tworzony w globalnym obiekcie przeglądarki, z resztą to by nie miało sensu... pisząc plugin jesteś o warstwę wyżej niż na stronie internetowej, do czego to przyrównać(IMG:style_emoticons/default/questionmark.gif) np. na stronie masz dołączone jQuery, ale na stronie masz też iframe, o ile adres ramki jest z tego samego serwera to masz możliwość odwołania się do elementów znajdujących się w tej ramce... z pluginu będąc warstwę wyżej nie masz ograniczenia na politykę bezpieczeństwa...
zależy co dokładnie chcesz napisać i do czego to narzędzie ma służyć... może wystarczyło by stworzenie czegoś prostszego jak np. userscript?? warstwą logiki byłbyś od razu na poziomie strony internetowej... jak dam function show($) to przynajmniej nie czepia sie o jQuery jak nie dam to się czepia. gdyż stworzyłeś zmienną $ i ma ona wartość undefined jeśli nie podałeś argumentu wywołując tą funkcję... |
|
|
|
Post
#23
|
|
|
Grupa: Zarejestrowani Postów: 59 Pomógł: 0 Dołączył: 22.06.2008 Ostrzeżenie: (0%)
|
mam swoją aplikację napisaną w php. Jedną z funkcji aplikacji jest wysyłanie wiadomości między użytkownikami. Działa sobie ta aplikacja na jakims serwerku. Wadą jes że trzeba aplikacje miec otwartą przez przeglądarkę i otwartą stronę z nią. Chciałem napisać plugin do chrome który sprawdzałby czy jest wiadomość i wyświetlać komunikat notification jak gtalk. To wszystko już mam. Problem polega na tym ze musze informacje o wiadomościach wydobyć z bazy mysql do której dostęp jest tylko lokalny. Więc napisałem w php funkcje którea do zmiennych zwraca to co powinno pokazać się w komunikacie chroma (notification).
Wiec dane mam po uruchomieniu: http://localhost/chrome/message.php mam napisane że co sekunde sprawdzam i wywołuje funkcje show która to pobiera dwie zmienne. I to dział bo sprawdzałem w konsoli dokładnie ten kod:
natomiast jak ta funkcja jest uruchamiana co sekunde to odrazu dostaje komunikat czepiający się o getJSON. To samo skopiowane do konsoli działa. Nie bardzo rozumiem . To tak jakby w funkcji nie było dostępu do jQuery. dlatego funkcje zaczełem wywoływać show($); Tak mniej więcej wygląda funkcja:
Ten post edytował phpsuse 23.05.2013, 18:59:00 |
|
|
|
Post
#24
|
|
|
Grupa: Zarejestrowani Postów: 1 332 Pomógł: 294 Dołączył: 12.10.2008 Skąd: Olkusz Ostrzeżenie: (0%)
|
teraz po treningu sobie tak sączę piwko i luknąłem na dokumentację (ale wolę czytać Qt C++ niż to ;p)... masz narzędzia developerskie to upewnij się, czy masz problem z samym jQuery (zasięgiem zmiennych, czy masz tam gdzie stosujesz tą funkcję dostępne jQ) czy może z polityką bezpieczeństwa zaimplementowaną w przeglądarce - angielski znam po łebkach ale stawiam na politykę bezpieczeństwa, nie widzę też całości kodu i dawno nie pisałem rozszerzenia to może i masz też nie zdefiniowany w tym miejscu jQ...
przeczytaj to: Something to Declare i zwróć uwagę na "permissions"... pozdro... edit... przeglądam po łebkach i czytam wybiórczo, ale patrząc na Twój plik manifest już widzę, że miałem rację Cross-Origin XMLHttpRequest, dodatkowo jeśli operujesz na zakładkach to chyba musisz mieć dorzucone "tabs"... ogólnie to lektura tego manuala... masz tam jeszcze przykładowe pluginy... Ten post edytował zegarek84 23.05.2013, 22:18:20 |
|
|
|
Post
#25
|
|
|
Grupa: Zarejestrowani Postów: 59 Pomógł: 0 Dołączył: 22.06.2008 Ostrzeżenie: (0%)
|
Ja mam taki błąd:
Uncaught TypeError: Cannot call method 'getJSON' of undefined wywołuje to z konsoli
wpisuje ppp i dostaje odpowiedź prawidłową. Teraz jak uruchomoe tą funkcję
w taki sposób show($); to okienko notyfikacji sie pojawia a nie działa wczytywanie zmiennych z pliku message.php a i plik manifest:
Inaczej ta funkcja odpalona z konsoli działa:
ta sama funkcja jako dodatek zwraca błąd: Uncaught ReferenceError: $ is not defined w lini:
co jest grane już mnie trafa ? Ten post edytował phpsuse 24.05.2013, 06:29:19 |
|
|
|
Post
#26
|
|
|
Grupa: Zarejestrowani Postów: 1 332 Pomógł: 294 Dołączył: 12.10.2008 Skąd: Olkusz Ostrzeżenie: (0%)
|
piszesz co chcesz i nie wszystko udostępniasz...
masz linka Using jQuery to build Google Chrome extensions ale jeszcze raz napiszę, iż kontekst strony to nie to samo co kontekst pluginu - masz inne zmienne!!! podstawy js tu się kłaniają i dokumentacja google chrome... edit... zainstaluj sobie i przejrzyj źródła rozszerzenia jQuery Shell ale prawda jest taka, że nie bardzo wiesz w których plikach kiedy jesteś... jeszcze możesz przejrzeć źródła Inject jQuery gdzie możesz załączać jQ na dowolnej stronie - jednak nie o to Ci chodziło tylko o skorzystanie z jQ w pluginie!!! dokumentacja i narzędzia developerskie to podstawa... a jeśli chcesz zaimplementować userscript w google chrome na wzór GM z mozilli to dodatek to rozszerzenie typu Tampermonkey Ten post edytował zegarek84 24.05.2013, 15:38:05 |
|
|
|
![]() ![]() |
|
Aktualny czas: 24.12.2025 - 19:20 |