My Iframe SSI script II doesnt work on Firefox and Opera

MCM

No avatar

2007-09-17 13:18

Hello,

I am trying to include Quick.Cart webshop on my website template and the best (maby the only) way is to use iframe option, and thats what I have just accomplished, but problem is that script works fine only in Internet Explorer (included page fits just like I wanted to).

But, when I open my site in Opera page is blank? Also, if I open it in Firefox (new version) I can only see small part of site with scrollbars, for which I dont want to be shown..

This is demo version of my site:

http://www.centralni-servis.co.ba/test3.php

This is code I used in HEAD section:

<script type="text/javascript">

/***********************************************
* IFrame SSI script- &#169; 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"

var getFFVersion=navigator.userAgent.substring(navigator.userAgent.indexOf("Firefox")).split("/&quo t;)[1]
var FFextraHeight=parseFloat(getFFVersion)>=0.1? 16 : 0 //extra height in px to add to iframe in FireFox 1.0+ browsers

function dyniframesize() {
var dyniframe=new Array()
for (i=0; i<iframeids.length; i++){
if (document.getElementById){ //begin resizing iframe procedure
dyniframe[dyniframe.length] = document.getElementById(iframeids[i]);
if (dyniframe[i] && !window.opera){
dyniframe[i].style.display="block"
if (dyniframe[i].contentDocument && dyniframe[i].contentDocument.body.offsetHeight) //ns6 syntax
dyniframe[i].height = dyniframe[i].contentDocument.body.offsetHeight+FFextraHeight;
else if (dyniframe[i].Document && dyniframe[i].Document.body.scrollHeight) //ie5+ syntax
dyniframe[i].height = dyniframe[i].Document.body.scrollHeight;
}
}
//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"
}
}
}

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

</script>


and this part of code between body part in layout cell:

<iframe id="myframe" src="./shop/index.php" scrolling="no" marginwidth="0" marginheight="0" frameborder="0" vspace="0" hspace="0" style="overflow:visible; width:100%; display:none"></iframe>


Tis is a very good example of how I would like my site to look like:


http://shop3.cylog.de


I really need to fix this problem as soon as possible;(


Any help is appreciated and thanks in advance for promt replys!

Cheers!

» Quick.Cart v2.x

Adnan

idaryl

Avatar: idaryl

2007-09-18 09:19

You are trying to get SimpleCMS intructions to work in a regular page - that code was written by nMud for SimpleCMS and works fine there - believe me it will not work outside of the CMS - (I've already tried it!)

merci

No avatar

2007-09-18 09:20

MCM - maybe start with some easier code... firstly for example put this iframe:

<iframe src="shop/index.php" style="width:500px;height:500px;"></iframe>

and see how it looks in different browser.

idaryl

Avatar: idaryl

2007-09-18 09:23

It will however, work if you use a regular ifram call and pre-plan the width and height of your iframe and set the scroolbars to be ON; the code you're talking about above works in a dynamically resizing div (again in a cms site) and the scroll bars are set to "0" effectively making it sit in a "fixed size"

idaryl

Avatar: idaryl

2007-09-18 09:24

Sorry Merci - you got there before I did ;-)

MCM

No avatar

2007-09-18 11:02

thanks very much!! ;P

@idaryl

Yes, I understand, I have to define my own pre-planed iframe just like merci suggested too, and thats what I have done.

@merci

your code helped very much:

<iframe src="shop/index.php" style="width:500px;height:500px;"></iframe>

this is how it looks now:

<iframe src="shop/index.php" style="width:771px;height:697px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"></iframe>

you can check it out on:

http://www.centralni-servis.co.ba/test3.php

and I am very satisfied, it also works in Opera very good!

But, I still have one small problem with iframe height...Width of iframe is OK, because I want it to be fixed: 771px but for iframes height I would like it to be automatic (auto), I am not sure is this possible and what do I have to change in my code??

thnks in advance!

Adnan

ned

Avatar: ned

2007-09-18 12:59

Im getting a parse error at line 100 in /lang/en.php - missing ";" ?

MCM

No avatar

2007-09-19 05:16

try again, that error appeared for only 5 min. because I was translating a script.

cheers

Adnan

merci

No avatar

2007-09-19 08:38

MCM - maybe try to set height as you want and add overflow

Back to top
about us | contact