Frame helyettesítése divben, FF alatt megy, IE, Crome alatt nem. Mi lehet a gond?
Sziasztok
Ezzel a scripttel van gondom, ugyanis a Firefox, és a Safari normálisan kezeli, viszont az IE, és a Chrome nem kezeli normálisan. A kód a dynamicdrive oldalról származik, de az AJAX-hoz még nemigazán értek, így nem tudom hogy hol lehet a hiba. A script:
<script type="text/javascript">
/***********************************************
* Dynamic Ajax Content- Dynamic Drive DHTML code library (www.dynamicdrive.com)
* This notice MUST stay intact for legal use
* Visit Dynamic Drive at [link] for full source code
***********************************************/
var bustcachevar=1 //bust potential caching of external pages after initial request? (1=yes, 0=no)
var loadedobjects=""
var rootdomain=" [link]
var bustcacheparameter=""
function ajaxpage(url, containerid){
var page_request = false
if (window.XMLHttpRequest) // if Mozilla, Safari etc
page_request = new XMLHttpRequest()
else if (window.ActiveXObject){ // if IE
try {
page_request = new ActiveXObject("Msxml2.XMLHTTP")
}
catch (e){
try{
page_request = new ActiveXObject("Microsoft.XMLHTTP")
}
catch (e){}
}
}
else
return false
page_request.onreadystatechange=function(){
loadpage(page_request, containerid)
}
if (bustcachevar) //if bust caching of external page
bustcacheparameter=(url.indexOf("?")!=-1)? "&"+new Date().getTime() : "?"+new Date().getTime()
page_request.open('GET', url+bustcacheparameter, true)
page_request.send(null)
}
function loadpage(page_request, containerid){
if (page_request.readyState == 4 && (page_request.status==200 || window.location.href.indexOf("http")==-1))
document.getElementById(containerid).innerHTML=page_request.responseText
}
function loadobjs(){
if (!document.getElementById)
return
for (i=0; i<arguments.length; i++){
var file=arguments[i]
var fileref=""
if (loadedobjects.indexOf(file)==-1){ //Check to see if this object has not already been added to page before proceeding
if (file.indexOf(".js")!=-1){ //If object is a js file
fileref=document.createElement('script')
fileref.setAttribute("type","text/javascript");
fileref.setAttribute("src", file);
}
else if (file.indexOf(".css")!=-1){ //If object is a css file
fileref=document.createElement("link")
fileref.setAttribute("rel", "stylesheet");
fileref.setAttribute("type", "text/css");
fileref.setAttribute("href", file);
}
}
if (fileref!=""){
document.getElementsByTagName("head").item(0).appendChild(fileref)
loadedobjects+=file+" " //Remember this object as being already added to page
}
}
}
</script>
Azért nem működik, mert pont az ehhez szükséges rész hiányzik a script-ből.
Itt régebben írtam egy működőt.
http://www.gyakorikerdesek.hu/szamitastechnika__weblapkeszit..
Mièrt nem használsz jquery-t inkább. Azzal egy sorban el lehet intézni.
Mert egy régebbi kérdésemre ezt ajánlották, és az oldal tanulmányozásával sikerült kisilabizálnom, hogy mit hova írjak, hogy a linkjeim a divben jelenjenek meg:)
A JQUERY-hez meg egyáltalán nem értek, így azt magyarázni is kellene:)
Nade amit írtál ott ennél a résznél:
Link:
<a href="javascript:replaceContent('valami.php')">link szövege</a>
Betöltés kijelzése: (stílusát CSS-ben úgy alakítod, ahogy akarod)
<div class="loading" id="HttpClientStatus">
<div style="display:none">Loading...</div>
</div>
Behúzandó tartalom az alábbi divbe kerül bele:
<div id="tartalom">
</div>
a "valami.php" az én linkem amit be akarok tölteni?ez lehet .htm is?(mert ha nem, akkor át kell neveznem őket:D)
Azt gondolom hogy a "tartalom" ID-s divbe tölti be.
Nem szóltam, köszi ezt a scriptet, jól működik (mind az 5 böngészőn kipróbáltam:D), csak kellett neki egy XAMPP, és működött egyből:)
Köszi mégegyszer is:)
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!