![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 13 Pomógł: 0 Dołączył: 25.06.2009 Ostrzeżenie: (0%) ![]() ![]() |
Witam robie skrypt Greasemonkey'ia pod pewną stronę, niestety wymaga on usunięcia <td> z kodu.
Skrypt tego typu:
Nie wchodzi w grę ponieważ to samo 'class' ma pare rzeczy i usuwa niepotrzebne. Dlatego trzeba napisać kod gdzie Greasemonkey zrozumie o jakiego <td> chodzi. Poprzez ten 'title' który nigdy sie nie powtarza ![]() a tutaj kod źródła strony
Z góry dzięki za pomoc |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 677 Pomógł: 89 Dołączył: 31.08.2003 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Zapewne poprzez selektor:
Kod td.gnsall[title="kuchnia przyprawy"] { display:none!important;}
Ten post edytował mls 25.06.2009, 10:01:10 -------------------- |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 13 Pomógł: 0 Dołączył: 25.06.2009 Ostrzeżenie: (0%) ![]() ![]() |
Próbowałem tego kodu na 20 różnych wersji - nic :F
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 2 350 Pomógł: 512 Dołączył: 4.01.2009 Skąd: Wrocław / Świdnica Ostrzeżenie: (0%) ![]() ![]() |
A Twoja przeglądarka interpretuje CSS3? Jak nie wiesz o co chodzi czy korzystasz z FF>=3?
Można jeszcze wyciągnąć element przez JS. Szukasz w Google funkcji getElementsByClassName, zakładasz pętlę na wszystkie wyniki i spr czy tittle = 'coś tam' i jeśli tak to element.style.display = 'none'; PS. Słoabo znam GM ![]() Ten post edytował kamil4u 25.06.2009, 11:19:35 -------------------- |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 13 Pomógł: 0 Dołączył: 25.06.2009 Ostrzeżenie: (0%) ![]() ![]() |
Tak, FF3, poszukam trochę o tym getElementsByClassName, ale nie ukrywam ze i tak i tak pomocby się przydała
|
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 2 350 Pomógł: 512 Dołączył: 4.01.2009 Skąd: Wrocław / Świdnica Ostrzeżenie: (0%) ![]() ![]() |
Pokaż co tam naskrobałeś jak wychodzić nie będzie to pomożemy - pamiętaj, że DOM musi być załadowane:
Kod onload = function(){
//tu już normalny kod :) } -------------------- |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 13 Pomógł: 0 Dołączył: 25.06.2009 Ostrzeżenie: (0%) ![]() ![]() |
Poddaje sie :F
|
|
|
![]()
Post
#8
|
|
![]() Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
Cytat pamiętaj, że DOM musi być załadowane: A w kodzie mówisz o czym innym. [; -------------------- ![]() ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW! |
|
|
![]()
Post
#9
|
|
![]() Grupa: Zarejestrowani Postów: 2 350 Pomógł: 512 Dołączył: 4.01.2009 Skąd: Wrocław / Świdnica Ostrzeżenie: (0%) ![]() ![]() |
Cytat Poddaje sie :F Pokaż chociaż swoje próby. Nie będziemy za Ciebie pisać gotowców, gdy Ty nawet nie raczysz spróbować(a jak raczysz to to pokaż!) Cytat A w kodzie mówisz o czym innym. [; A czepiasz się ![]() ![]() -------------------- |
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 13 Pomógł: 0 Dołączył: 25.06.2009 Ostrzeżenie: (0%) ![]() ![]() |
Wyłączyłem wszystkie notatniki, w których robilem, ale za chwile zedytuje posta i napisze mniej wiecej to samo co wcześniej (troche pamiętam).
////
Robiłem to na bazie tego http://diveintogreasemonkey.org/patterns/remove-element.html Ten post edytował bohdan 25.06.2009, 16:03:28 |
|
|
![]()
Post
#11
|
|
![]() Grupa: Zarejestrowani Postów: 2 350 Pomógł: 512 Dołączył: 4.01.2009 Skąd: Wrocław / Świdnica Ostrzeżenie: (0%) ![]() ![]() |
Yyy no to tak jednym słowem to "źle":
Ten post edytował kamil4u 25.06.2009, 16:22:34 -------------------- |
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 1 332 Pomógł: 294 Dołączył: 12.10.2008 Skąd: Olkusz Ostrzeżenie: (0%) ![]() ![]() |
A Twoja przeglądarka interpretuje CSS3? Jak nie wiesz o co chodzi czy korzystasz z FF>=3? Można jeszcze wyciągnąć element przez JS. Szukasz w Google funkcji getElementsByClassName, zakładasz pętlę na wszystkie wyniki i spr czy tittle = 'coś tam' i jeśli tak to element.style.display = 'none'; PS. Słoabo znam GM ![]() w FF3 jest już obsługiwana funkcja getElementsByClassName - nie trzeba jej tworzyć na nowo ;p - nowa opera - nie wiem od której dokładnie wersji ale też obsługuje getElementsByClassName ;p ps. nie trzeba znać wcale GM by pisać skrypty dosyć rozbudowane pod GM - wystarczy znać js a z dodatkowych funkcji GM w zasadzie nie trzeba kożystać - a i nie lubię sam kożystać z unsafewindow ;p - da się to inaczej zrobić ;p ps. skrypty GM odpalają się zawsze po załadowaniu DOM - jeśli chodzi o operę jeśli jest rozszerzenie podwójne tzn. .user.js to w operze jest podobnie i nie trzeba deklarować po załadowaniu dokumentu - a nawet wtedy by nie zadziałąło - ale jeśli w operze skrypt będzie miał rozszerzenie tylko .js to wtedy trzeba deklarować uruchomienie funkcji po załadowaniu DOM... w greasmonkey ogólnie jeszcze warstwa skryptu jest domyślnie oddzielona od window jednak niektóre przypadki botów jeśli ktoś takie pisze pod grę jakąś da się wykryć jeśli ktoś nie umiejętnie stosuje niektóre funkcje ;p opera swoje skrypty łąduje do obiektu window odrazu więc wydawało by się że niedozwolone skrypty na niektórych grach łątwo wykryć - ale wystarczy trochu pomyśleć a w obiekcie window nie będzie śladu zdeklarowanej funkcji ani zmiennych ![]() zawsze można sprawdzić co siedzi w window za pomocą for(i in window){....} a w kropki odpowiednie zczytywanie ![]() -------------------- Jeśli twoja ręka rusza do przodu powstrzymaj swój gniew; gdy wyprzedza cię twój gniew - wycofaj rękę.
|
|
|
![]()
Post
#13
|
|
Grupa: Zarejestrowani Postów: 13 Pomógł: 0 Dołączył: 25.06.2009 Ostrzeżenie: (0%) ![]() ![]() |
? Nie działa - to oczywiste Ten post edytował bohdan 25.06.2009, 20:00:28 |
|
|
![]()
Post
#14
|
|
![]() Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
Kod getElementsByClassName A wskazałeś obiekt, wg którego szukać? Poza tym: http://www.codingforums.com/showthread.php?t=121776 -------------------- ![]() ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW! |
|
|
![]()
Post
#15
|
|
Grupa: Zarejestrowani Postów: 13 Pomógł: 0 Dołączył: 25.06.2009 Ostrzeżenie: (0%) ![]() ![]() |
Teraz mnie tak zawirowałeś ze nie rozumiem nic z tego ;(
|
|
|
![]()
Post
#16
|
|
![]() Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
No tę pierwszą funkcję musisz wywołać z kontekstu:
Kod obiekt.getElement... A u Ciebie tak nie jest. -------------------- ![]() ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW! |
|
|
![]()
Post
#17
|
|
![]() Grupa: Zarejestrowani Postów: 2 350 Pomógł: 512 Dołączył: 4.01.2009 Skąd: Wrocław / Świdnica Ostrzeżenie: (0%) ![]() ![]() |
Po 1. - nie masz zielonego pojęcia o JS
Po 2. - po to są manule (MDC), żeby z nich korzystać Po 3. - dałem Ci wskazówki, a nie gotowy kod w komentarzach Po 4. - dam Ci jeszcze klika podpowiedzi(bo widzę ciężko to idzie ).. Kod <? Przyjdź z poprawionym kodem e = document.getElementsByClassName('gnsall'); for(zmienna=0; x=e[zmienna++];) <-- tego nie będę tłumaczył, bo to trochę udziwnione :) { if (td.kuchnia przyprawy == 'kuchnia przyprawy' and e.nodeName == 'td') // popraw w pierwszym warunku na x.title == ..., a w drugim e na x (i zamień and na && - bo tak ładniej :) ) var adSidebar = document.getElementsByTitle (kuchnia przyprawy); // co to za linia ? if (adSidebar) { //ten waunek tez nie potrzebny adSidebar.parentNode.removeChild(adSidebar); // zamiast adSidebar daj x } } ![]() -------------------- |
|
|
![]()
Post
#18
|
|
Grupa: Zarejestrowani Postów: 13 Pomógł: 0 Dołączył: 25.06.2009 Ostrzeżenie: (0%) ![]() ![]() |
? Coś nadal źle, bo nie chodzi Ten post edytował bohdan 26.06.2009, 13:00:15 |
|
|
![]()
Post
#19
|
|
![]() Grupa: Zarejestrowani Postów: 2 350 Pomógł: 512 Dołączył: 4.01.2009 Skąd: Wrocław / Świdnica Ostrzeżenie: (0%) ![]() ![]() |
Powinno zadziałać
![]() Kod e = document.getElementsByClassName('gnsall'); for(var i=0; x=e[i++];){ if (x.title == 'kuchnia przyprawy' && x.nodeName == 'td') x.parentNode.removeChild(x); // lub x.style.display = none; } --EDIT-- Dopiero teraz zauważyłem... : Kod <tr> .., że to span ma class=gnsall, a nie td..., czyli kod IMO powinien być coś w ten deseń:<td class="row1" title="kuchnia przyprawy" align="left" valign="top"><span class="gnsall"> </span></td> </tr> Kod e = document.getElementsByClassName('gnsall');
for(var i=0; x=e[i++];){ if (x.parentNode.title == 'kuchnia przyprawy' && x.nodeName == 'span') x.parentNode.removeChild(x); // lub x.style.display = none; } Ten post edytował kamil4u 26.06.2009, 13:09:42 -------------------- |
|
|
![]()
Post
#20
|
|
Grupa: Zarejestrowani Postów: 13 Pomógł: 0 Dołączył: 25.06.2009 Ostrzeżenie: (0%) ![]() ![]() |
Dziwna sprawa - zaden z powyzszych nie działa
![]() |
|
|
![]() ![]() |
![]() |
Aktualny czas: 19.08.2025 - 19:30 |