Lehetséges egy iframe-ből akármilyen módon "kitörni"?
Ez a kérdés nyilván kissé hatásvadász. ;D
A kérdés valahogy úgy hangzana pontosabban, hogy: 'Hogyan lehet bármilyen funkciót (legyen az js, php vagy akármi) úgy végrehajtani, hogy befolyással legyen az iframen kívüli részre?'
Ezen kívül azt ugye tudom, hogy ellenőrizni lehet, hogy iframeben van-e a tartalom. De nekem például olyan kéne, hogy az iframe src-jét tudjam módosítani. Merthogy a menüpont aszerint váltana színt, hogy az iframe src-je mi. Csakhogy nem tudok úgy document.location.hrefet váltani, hogy az a menüre kihatással lenne. A funkciómat, ami millisecenként lefutna, leblokkolja és belassítja pl. a Chrome. Firefox alatt megy. De nem csak nekem lesz, érthető...
iFrame ellenőrzés:
if(top.location != self.location){
//benn az iFrameben
} else {
//nics benn
}
"Ezen kívül azt ugye tudom"
Azért kösz, de már rég beépítettem. Ha nem iframeként nyílik meg, echo "ne hackerkedj" .
Iframe-ből a szülő dokumentum hívása (js):
parent.document. ...
if (top.location != location) {
top.location.href = document.location.href ;
}
A parent kulcsszóval már rátaláltam...
Bár ez nem teljes mértékben az, amit szerettem volna, de megoldom most már így.
Egyébként a "A funkciómat, ami millisecenként lefutna, leblokkolja és belassítja pl. a Chrome. Firefox alatt megy." nem a böngésző lassítja, hanem az, hogy terheled a felhasználó számítógépét. A Chrome több memóriát eszik alapból, ezért a lassulás feltűnőbb. Ne csinálj ilyen ostobaságot, mert a felhasználót szivatod az ilyesmivel.
Pár jótanács: tartalom megjelenítésre hanyagolni kellene az iframe-t. Egyrészt ronda, másrészt nehézkes a kezelése. Normálisan generált oldalakat tessék gyártani. Ha dinamikusan szeretnéd a tartalmakat megjeleníteni, akkor használj php-t, arra találták ki. Létezik a modal window fogalma, keress rá, használd. Bootstrap, jquery, ajax nagy segítség a dinamikus oldalkezelésben.
Sok sikert!
Nos, akkor tisztázzuk:
az oldalaim forráskódjának a kb. 90%-a php.
Az iframe ideiglenes, csak addig van, amíg grafikus felület nincs, hogy ne kelljen gépelgetni.
De pl. [link]
Itt egy szem képe változik (direkt nem jQuery)[div hover alapján, 16 db], és firefox nem blokkolja be a mouseenter eventet, a chrome meg igen.
Nem is itt számítana, hanem egy menünél pl. De arra már úgyis jQueryt fogok használni.
"
Az iframe ideiglenes, csak addig van, amíg grafikus felület nincs, hogy ne kelljen gépelgetni.
"
Ez nem magyarázkodás, tény.
Ugyanakkor érdekelne, hogy ebben hol látsz te sértést.
Ha azonban a Chromeot véded, akkor nem tudok mit mondani, nem arra van kitalálva, hogy erőforrsát igénykló kódokat futtasson. És egyébként sem akarok kiküldeni egy hoverra változó oldalt felhasználóknak.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!