İyinet'e Hoşgeldiniz!

Türkiye'nin En Eski Webmaster Forum'una Hemen Kayıt Olun!

Kayıt Ol!

iframe Yüksekliği

zokkie

0
İyinet Üyesi
Onaylı Üye
Katılım
8 Şubat 2003
Mesajlar
1,465
Reaction score
0
bu vereceğim kod, iframe'in içinde açtırdığınız sayfaya göre yüksekliği değiştiriyor.

Kod:
<script type="text/javascript">

/***********************************************
* IFrame SSI script II- © Dynamic Drive DHTML code library (http://www.dynamicdrive.com)
* Visit DynamicDrive.com for hundreds of original DHTML scripts
* This notice must stay intact for legal use
***********************************************/

//Input the IDs of the IFRAMES you wish to dynamically resize to match its content height:
//Separate each ID with a comma. Examples: ["myframe1", "myframe2"] or ["myframe"] or [] for none:
var iframeids=["myframe"]

//Should script hide iframe from browsers that don't support this script (non IE5+/NS6+ browsers. Recommended):
var iframehide="yes"

function resizeCaller() {
var dyniframe=new Array()
for (i=0; i<iframeids.length; i++){
if (document.getElementById)
resizeIframe(iframeids[i])
//reveal iframe for lower end browsers? (see var above):
if ((document.all || document.getElementById) && iframehide=="no"){
var tempobj=document.all? document.all[iframeids[i]] : document.getElementById(iframeids[i])
tempobj.style.display="block"
}
}
}

function resizeIframe(frameid){
var currentfr=document.getElementById(frameid)
if (currentfr && !window.opera){
currentfr.style.display="block"
if (currentfr.contentDocument && currentfr.contentDocument.body.offsetHeight) //ns6 syntax
currentfr.height = currentfr.contentDocument.body.offsetHeight; 
else if (currentfr.Document && currentfr.Document.body.scrollHeight) //ie5+ syntax
currentfr.height = currentfr.Document.body.scrollHeight;
if (currentfr.addEventListener)
currentfr.addEventListener("load", readjustIframe, false)
else if (currentfr.attachEvent){
currentfr.detachEvent("onload", readjustIframe) // Bug fix line
currentfr.attachEvent("onload", readjustIframe)
}
}
}

function readjustIframe(loadevt) {
var crossevt=(window.event)? event : loadevt
var iframeroot=(crossevt.currentTarget)? crossevt.currentTarget : crossevt.srcElement
if (iframeroot)
resizeIframe(iframeroot.id);
}

function loadintoIframe(iframeid, url){
if (document.getElementById)
document.getElementById(iframeid).src=url
}

if (window.addEventListener)
window.addEventListener("load", resizeCaller, false)
else if (window.attachEvent)
window.attachEvent("onload", resizeCaller)
else
window.onload=resizeCaller

</script>

Kod:
	  <iframe name="addmin" id="myframe"  src="lal.asp"  scrolling="no" marginwidth="0" marginheight="0" frameborder="0" vspace="0" hspace="0" style="overflow:visible; width:100%; display:none"></iframe>

çok güzel bi kod, yanlız sayfa yüklenmeden yüksekliği değiştirmiyor o biraz sorun...
 

216

0
İyinet Üyesi
Katılım
4 Ağustos 2006
Mesajlar
336
Reaction score
0
Çok teşekkürler.
Aslında böyle olması daha güzel, sayfa yüklenmeden hiçbirşey göremiyorsunuz.
Özellikle firefox, opera'nın tablo oluşturmasındaki görsel bozukluk için birebir.
 

Caesar

0
İyinet Üyesi
Katılım
5 Haziran 2006
Mesajlar
1,894
Reaction score
7
height kullanmasan zaten istediğin olacaktı bir önceki mesajımda da bunu belirtmek istedim tablo frame veya iframe de height mantığı değişmez arkadaşlar.
 

zokkie

0
İyinet Üyesi
Onaylı Üye
Katılım
8 Şubat 2003
Mesajlar
1,465
Reaction score
0
height kullanmasan zaten istediğin olacaktı bir önceki mesajımda da bunu belirtmek istedim tablo frame veya iframe de height mantığı değişmez arkadaşlar.

öyle olmuyor, iframe'e height yazmayınca 200-250 px gibi bir yükseklikte kalıyor. deneyebilirsin...
 

Caesar

0
İyinet Üyesi
Katılım
5 Haziran 2006
Mesajlar
1,894
Reaction score
7
Kod:
<style type="text/css">
<!--
#iframe {
  position: absolute;
  top: 34px;
  width: 230px;
  ......
  ......
}
-->
</style>
<div id="iframe">

</div>
CSS tasarım denediniz mi?
 

216

0
İyinet Üyesi
Katılım
4 Ağustos 2006
Mesajlar
336
Reaction score
0
Evet hem de çok.
Sorun 100% olması, sabit bir değer verme değil.

İsterseniz 1500px verin oluyor ama dinamik içerik için özellikle iframe'in altında bir bölümünüz daha varsa zokkie'nin verdiği koddan başkası olmuyor.
 

dsgnr

0
İyinet Üyesi
Katılım
22 Mart 2006
Mesajlar
1,144
Reaction score
1
Konum
dev
arkadaşım istediği şey. iframe içindeki sayfanın boyutu ne kadarsa iframeninde otomatikmen o boyuta ulaşması.

İframe Sayfası : dsgnr.html

HTML:
<body onload="boyut()">
<table id="tablom" width=100% height=500>
<tr><td width=100% height=500 bgcolor=#CoCoCo>
</td></tr>
</table><script>
function boyut()
{
var ctbl = document.getElementById("tablom");
this.resizeTo(ctbl.offsetWidth + 0, ctbl.offsetHeight + 0);
}
</script>
</body>


Ana Sayfa : index.html

HTML:
<iframe name="framem" src="dsgnr.html"  scrolling="no" marginwidth="0" marginheight="0" frameborder="0"></iframe>

yeterlidir ;)
 

216

0
İyinet Üyesi
Katılım
4 Ağustos 2006
Mesajlar
336
Reaction score
0
Evet dediğiniz de işe yarıyor fakat iframe'de gösterilecek tüm sayfalara koymak gerekiyor.

Java Script ile olmuyor dediğim mesajda buna benzer bir kod kullandım.
iframe'in bulunduğu sayfaya yerleştiriliyor ama bu sadece ekranın boş olan yerine kadar yükseltiyor.
Buradan bakabilirsiniz
 

Türkiye’nin ilk webmaster forum sitesi iyinet.com'da forum üyeleri tarafından yapılan tüm paylaşımlardan; Türk Ceza Kanunu’nun 20. Maddesinin, 5651 Sayılı Kanununun 4. maddesinin 2. fıkrasına göre, paylaşım yapan üyeler sorumludur.

Backlink ve Tanıtım Yazısı için iletişime geçmek için Skype Adresimiz: .cid.1580508955483fe5

Üst