TP-Docs
HTML5 Icon HTML5 Icon HTML5 Icon
TP on Social Media

Recent

Welcome to TinyPortal. Please login or sign up.

April 19, 2024, 06:51:00 AM

Login with username, password and session length
Members
  • Total Members: 3,885
  • Latest: Growner
Stats
  • Total Posts: 195,164
  • Total Topics: 21,219
  • Online today: 266
  • Online ever: 3,540 (September 03, 2022, 01:38:54 AM)
Users Online
  • Users: 0
  • Guests: 115
  • Total: 115

SOLVED - Script dans un iframe ?

Started by Uthn, August 26, 2006, 10:41:37 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Uthn

Bonjour ÃÆ'Ã,  tous,

J'ai un petit soucis avec mon portail, je souhaite integrer un script php dans un iframe (accessible via le menu par exemple) jusque lÃÆ'Ã,  par de soucis; j'ai trouvÃÆ'Ã,© ce script qui retaille automatiquement la page appelÃÆ'Ã,©e via l'iframe.

<?xml version=\"1.0\" encoding=\"iso-8859-1\"?".">
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>document sans titre</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<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"

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

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+FFextraHeight;
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>
</head>

<body>
<iframe id="myframe" src="/yourfile/myfile.html or .php" scrolling="no" marginwidth="0" marginheight="0" frameborder="0" vspace="0" hspace="0" style="overflow:novisible; width:100%; display:none"></iframe>
</body>
</html>


Seul soucis de taille, les liens executÃÆ'Ã,©s depuis l'iframe ne restent pas dans celui-ci mais repassent le script en plein ÃÆ'Ã,©cran ignorant completement le portail (je ne sais pas si je suis  bien clair je vais mettre des images ;))

La page d'accueil (le portail en rouge, l'iframe en bleu; les liens en vert)
La mÃÆ'Ã,ªme chose une fois que j'ai cliquÃÆ'Ã,© sur un des liens... envolÃÆ'Ã,© le portail :(

Si quelqu'un a une petite idÃÆ'Ã,©e sur la question, d'avance merci :)

Uthn

J'ai trouvÃÆ'Ã,© en farfouillant un peu ;)

Donc pour ceux qui souhaiteraient faire fonctionner EQDKP dans un iframe (et que les clics sur les liens restent dans l'iframe...), il faut modifier le fichier /includes/eqdkp.php (et non pas le code du bloc de l'iframe concernÃÆ'Ã,©)

cherchez

${$var} .= '<a href="' . $this->root_path . $menu['link'] . '" class="copy" target="_top">' . $menu['text'] . '</a> | ';


et remplacez par

${$var} .= '<a href="' . $this->root_path . $menu['link'] . '" class="copy" target="_self">' . $menu['text'] . '</a> | ';