- Poco F8 Pro – titkos favorit lehet belőle
- Nagy aksival és erős hardverrel megjött Magyarországra a Poco X8 Pro és Pro Max
- iPhone topik
- Google Pixel topik
- Poco X6 Pro - ötös alá
- Mobil flották
- Itt a Galaxy S26 széria: az Ultra fejlődött, a másik kettő alig
- Honor Magic V5 - méret a kamera mögött
- Dreame Pilot - Álomhaj, ó!
- Okosóra és okoskiegészítő topik
-
Mobilarena
JavaScript != Java (A JavaScript nem összekeverendő a Javával, két különböző programozási nyelvről van szó!)
Új hozzászólás Aktív témák
-
btz
addikt
válasz
sztanozs
#7847
üzenetére
Sikerült megoldanom a problémámat, részben a segítségeddel, mivel rájöttem, hogy amit akarok az az inner.HTML-el is megoldható. Ismertem amúgy ezt a lehetőséget, de nem akartam használni, mivel ala nature szerettem volna kiíratni, mert bele akartam rakni egy input mező value értékébe. Ekkor villant be hogy mért ne csinálhatnám az egész input mezőt az innerHTML-el?
A https://website.com/embed/id oldalon ez a script leméri az "all" div magasságát.
<script>
var element = document.getElementById('all');
var magassag = (element.offsetHeight);
var MYGLOBAL = (element.offsetHeight) + 10;
//window.parent.postMessage(['varA', MYGLOBAL], '*');
parent.postMessage({v1: MYGLOBAL}, "*");
</script>Azon az oldalon ahol a https://website.com/embed/id be van szúrva IFRAME ként:
<html lang="en"><head>
<meta charset="utf-8">
<title>EMBED TESZT</title>
</head>
<body>
<iframe src="https://website.com/embed/id" id="iframe" name="iframe" scrolling="no" frameborder="0" style="width: 100%; height: 600px;"></iframe>
<br /><br />
<div id="myDiv">0</div>
<script type="text/javascript" >
function receiveMessage(event) {
var ifrheig = (event.data.v1) + 'px';
document.getElementById("iframe").style.height = ifrheig;
var v1data = (event.data.v1);
var textNode = document.createTextNode(v1data);
document.body.appendChild(textNode);
var innertomydiv = '<input style="width: 100%;" type="text" id="frame" name="frame" value="<iframe src='https://website.com/embed/id' id='iframe' name='iframe' scrolling='no' frameborder='0' style='width: 100%; height: ' + v1data + ';'></iframe>">';
document.getElementById("myDiv").innerHTML = innertomydiv;
}
window.addEventListener("message", receiveMessage, false);
</script>
</body></html>1. Megjelenik az iFrame kezdetben 600px magassággal.
2. Kezdetben a myDiv értéke nulla.
3. A scriptben a receiveMessage funkcióval lekérem a CHILD oldal var MYGLOBAL = (element.offsetHeight) + 10; értékét ami a szülő oldalon van, beleteszem az egészet egy "ifrheig" nevű változóba és ezzel már be tudom állítani az Iframe magasságát (+10px ráhagyás, de ez már a "CHILD" oldali MYGLOBAL értékben alapból benne van)
4. v1data változóba téve ismét lekérem a MYGLOBAL értékét (event.data.v1) amit textNode-ként ki lehet íratni az aktuális helyen. Arra gondoltam, hogy majd ezt teszem bele egy input mezőbe magasságértékként az Iframe kódjával együtt, így majd az user már a kellő magassági értékkel együtt tudja kimásolni azt, nem kell pluszban a scriptkódot is kimásolni , hogy a megfelelő magasságot kapja.
5. Aztán rájöttem, hogy az egészet egy innertomydiv változóval beleíratom input mezőstől a második pontban említett myDiv-be. Így a pléda Iframe alatt megjelenik egy input mezőben az iFrame html kódja, amit könnyen kimásolhat az user és beilleszthet akárhova a megfelelő mérettel.
Új hozzászólás Aktív témák
- Milyen billentyűzetet vegyek?
- A tajvani chipgyártóknak is beteszi a kaput a Hormuzi-szoros lezárása
- Plazma TV topic
- HiFi műszaki szemmel - sztereó hangrendszerek
- Crimson Desert
- A fociról könnyedén, egy baráti társaságban
- Chieftec-Prohardver nyereményjáték
- Milyen asztali (teljes vagy fél-) gépet vegyek?
- exHWSW - Értünk mindenhez IS
- Milyen videókártyát?
- További aktív témák...
- GEN5!!! 14/12GB/s 1TB Gen5x4 NVMe SSD, 1 év gar
- BESZÁMÍTÁS! Részletfizetés 0% THM ÚJ GIGABYTE A16 3VH 16" notebook R7 260 16GB RTX 5060 3 év 27%
- Új HP 16 Victus FHD IPS 144Hz Ryzen7 8845HS 5.1Ghz 16GB 1TB SSD Nvidia RTX 4060 8GB Win11 Garancia
- HIBÁTLAN iPhone 15 Plus 128GB Blue -1 ÉV GARANCIA - Kártyafüggetlen, MS4504
- AKCIÓ! Apple Watch Ultra 2 49mm Cellular okosóra garanciával hibátlan működéssel
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest


