Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [JavaScript]wyalertowanie strony otwartej przez window.open
Star
post
Post #1





Grupa: Zarejestrowani
Postów: 294
Pomógł: 34
Dołączył: 16.02.2015

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


Czesc
Chcialbym wyalertowac sobie zawartosc strony otwartej w window.open, jednak taki kod nie dziala:

var myWindow = window.open("http://localhost/test.php?test=5", "myWindow", "width=200,height=100");
myWindow.addEventListener('load', alert(myWindow.document.body.innerHTML), true);

ewidentnie widac ,ze pierw wrzucany jest alert,a dopiero potem doladowuje sie strona.

Wiec jak to zrobic,aby alert zadzialal po pomyslnym zaladowaniu strony w window.open ?(IMG:style_emoticons/default/smile.gif)

Ten post edytował Star 25.08.2016, 22:49:36
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 6)
markuz
post
Post #2





Grupa: Zarejestrowani
Postów: 1 240
Pomógł: 278
Dołączył: 11.03.2008

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


Nie można wstrzykiwać w ten sposób skryptów na inne strony. Pomyśl co by to było gdyby się dało - mógłbyś otworzyć komuś np. stronę z kontem bankowym i wykonać kilka kliknięć żeby Ci zrobił przelew jeżeli jest zalogowany.
Go to the top of the page
+Quote Post
Star
post
Post #3





Grupa: Zarejestrowani
Postów: 294
Pomógł: 34
Dołączył: 16.02.2015

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


Mozna to pobrać, jeśli obie strony są na tym samym serwerze,wtefy jest to zgodne z polityką js.

I ten problem już rozwiązalem, jednak mam drugi - chciałbym 5razy, przy pomocy pętli, otworzyć ta stronę przez window.open. Jednak poniższy kod otwiera okno tylko raz :

  1. for(var j = 0; j<5; j++)
  2. {
  3. var myWindow = window.open("http://localhost/test.php?test="+j+"", "myWindow", "width=200,height=100");
  4.  
  5. myWindow.onload = function() {
  6. alert(myWindow.document.getElementsByClassName("names").length);
  7. myWindow.close();
  8. }
  9.  
  10. }



Gdy usunę
  1. myWindow.onload = function() {
  2. alert(myWindow.document.getElementsByClassName("names").length);
  3. myWindow.close();
  4. }
  5.  
  6.  


To okna otwierają się poprawnie. Orientuje się ktoś czym to jest spowodowane?
Go to the top of the page
+Quote Post
Comandeer
post
Post #4





Grupa: Zarejestrowani
Postów: 1 268
Pomógł: 254
Dołączył: 11.06.2009
Skąd: Świętochłowice

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


Jak zamykasz każde okno praktycznie od razu po otwarciu, to nic dziwnego, że ich nie ma.
Go to the top of the page
+Quote Post
Star
post
Post #5





Grupa: Zarejestrowani
Postów: 294
Pomógł: 34
Dołączył: 16.02.2015

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


Nawet gdy usunę zamykanie okna to dalej wyświetla się tylko jedno.
W jaki sposób Ty byś to rozwiązał?
Go to the top of the page
+Quote Post
markuz
post
Post #6





Grupa: Zarejestrowani
Postów: 1 240
Pomógł: 278
Dołączył: 11.03.2008

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


Może spróbuj każde okno przypisać do innej zmiennej tj.
windows = [];
for(w = 0; w < 5; w++) {
windows.push(window.open ...);
var w = windows[w];
w.onload ...
}

Ten post edytował markuz 26.08.2016, 00:40:56
Go to the top of the page
+Quote Post
Star
post
Post #7





Grupa: Zarejestrowani
Postów: 294
Pomógł: 34
Dołączył: 16.02.2015

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


niestety, dalej wyrzuca tylko jedno okno
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: 23.08.2025 - 17:14