Zastanawia mnie jedno, czy za pomocą wtyczek można ignerować w wyświetlany kod HTML strony?
Tzn zmieniać jakiś string (za pomocą replace?), bądź dodawać nowy...
I czy w JS używać content.document, document czy window.document ?
Moderator: Pomocy?!
Przeglądarka: Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.8.1) Gecko/20061010 Firefox/2.0
Przeglądarka: Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.8.1) Gecko/20061010 Firefox/2.0
Grapp pisze:Siemka :)
Zastanawia mnie jedno, czy za pomocą wtyczek można ignerować w wyświetlany kod HTML strony?
Tzn zmieniać jakiś string (za pomocą replace?), bądź dodawać nowy...
I czy w JS używać content.document, document czy window.document ?
Przeglądarka: Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.8.1) Gecko/20061010 Firefox/2.0
Oczywiście. Ale nie należy w tym celu edytować źródła (jeśli to masz na myśli mówiąc o edycji stringów), ale używać DOM-u.
Przeglądarka: Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.8.1) Gecko/20061010 Firefox/2.0
var anchorTags = contentDocument.getElementsByTagName("a");
for (var i = 0; i < anchorTags.length ; i++)
{
alert("Href of " + i + "-th element is : " + anchorTags[i].href + "\n");
}Przeglądarka: Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.8.1) Gecko/20061010 Firefox/2.0
contentDocument to własność elementu browser będąca aktualnie załadowanym dokumentem.
Przeglądarka: Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.8.1) Gecko/20061010 Firefox/2.0
<!-- shows Mozilla homepage inside a groupbox -->
<groupbox flex="1">
<caption label="Mozilla homepage"/>
<browser type="content" src="http://portal.x-wars.pl/index.php?topic=login" flex="1"/>
</groupbox>Przeglądarka: Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.8.1) Gecko/20061010 Firefox/2.0
var doc = getBrowser().selectedBrowser.contentDocument;
Przeglądarka: Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.8.1) Gecko/20061010 Firefox/2.0
doc.write(doc.replace(/test/, "xyz"));Przeglądarka: Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.8.1) Gecko/20061010 Firefox/2.0
Przeglądarka: Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.8.1) Gecko/20061010 Firefox/2.0
Przeglądarka: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1) Gecko/20061025 BonEcho/2.0
Grapp pisze:Które konkretnie ?
Acha, no i czy dobrej funkcji użyłem, jeżeli chodzi o podmiane tekstu?
Przeglądarka: Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.8.0.7) Gecko/20060909 Firefox/1.5.0.7
Jeśli chcesz więc modyfikować, dodawać bądź usuwać tagi, to używaj metod takich jak appendChild(), replaceChild() itp. Poprzeglądaj sobie http://developer.mozilla.org/en/docs/DOM:element.
doc.getElementById("id");Przeglądarka: Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.8.1) Gecko/20061010 Firefox/2.0
Przeglądarka: Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.8.0.7) Gecko/20060909 Firefox/1.5.0.7
var frame = getBrowser().selectedBrowser.contentDocument.nazwaRamki; Przeglądarka: Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.8.1) Gecko/20061010 Firefox/2.0
Grapp pisze:Czyli mam uzyc:
- Kod: Zaznacz cały
var frame = getBrowser().selectedBrowser.contentDocument.nazwaRamki;
?
i potem odpowiednio frame.getElementById()
var browserDoc = getBrowser().selectedBrowser.contentDocument;
var frameDoc = browserDoc.getElementById('id-ramki').contentDocument;
Przeglądarka: Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.8.0.7) Gecko/20060909 Firefox/1.5.0.7
Funkcji dobre, z tym że użyłeś jej na złym obiekcie. replace() jest standardową metodą JavaScript dostępną stringów, a ty użyłeś jej na dokumencie. edit: tzn to działa, ale to zamiast tego lepiej jest operować na poszczególnych stringach a nie na całym "zestringowanym" dokumencie.
Przeglądarka: Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.8.1) Gecko/20061010 Firefox/2.0
Grapp pisze:Hehe wielkie dzieki :)
Tzn. jak ?
Bo nie moge sobie w moim przypadku wziac np getElementById(), bo to co chce przeszukac to kod HTML, i tak sie sklada, ze to tabelki i inne pierdolki, w ktorych nie ma ID, czytez NAME.
Przeglądarka: Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.8.1) Gecko/20061010 Firefox/2.0
Przeglądarka: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1) Gecko/20061010 Firefox/2.0
Grapp pisze:OKi to to już zrobiłem :)
Wtyczka mi elegancko działa, z tymże jest jeden problem.
Działa tylko przy pierwszym odświeżeniu, a gdy chodzę po niej, klikając w linki, to żadna funkcja nie jest realizowana, nawet zwykłe alert("a");
Wróć do Programowanie z użyciem technologii Mozilli
Zarejestrowani użytkownicy: Baidu [Spider], Bing [Bot], Google [Bot]