phredMedlem sedan nov. 2005333 inlägg Hej ska nu försöka förklara detta så bra det går.
jag har två sidor, dessa ligger på helt skilda domäner/webbhotell.
på den första domänen har jag två filer en som heter iframe.asp och en som heter openIframe.js
på den andra domänen har jag endast en sida index.html
på den sistnämda sidan laddar jag in openIframe.js från domän1
<script type="text/javascript" src="http://www.domän1.se/openIframe.js"></script>
det skriptet skapar i sin tur en iframe på sidan index.html på domän2
var ifr = document.createElement('iframe');
ifr.src = 'http://www.domän1.se/iframe.asp';
ifr.setAttribute('frameBorder', 0);
document.body.appendChild(ifr);
Detta är inte hela koden men ni förstår vad den gör.
Nu till problemet, på sidan som öppnas i iframen (iframe.asp) vill jag ha en länk som tar bort(removeChild) själva iframen från index.html
jag tycker mig ha testat det mesta och börjar fundera på om det är möjligt, men det borde det ju vara eftersom jag kan skapa den, eller ?
Tacksam för all hjälp jag kan få i detta.
Är förklaringen luddig ? Hojjta till ska jag försöka förbättra den.
Ber om ursäkt för ev. stavfel.
/Fredrik
colioneMedlem sedan juni 20013 386 inlägg Nu är jag lite trött och kan ha förvillat mig bland dina domäner. Men det känns som same origin policy kan ställa till det för dig. :)
phredMedlem sedan nov. 2005333 inlägg ok, jag ska köra mig en googling för att förstå innebörden av det du skrev ;)
Så det är alltså lugnt att skapa ett iframe-element men inte att stänga det, korrekt uppfattat ?
Förslag på lösning ? Gå och sova kanske ? :)
EDIT*
För att förtydliga, att öppna denna iframe är inget problem alls, det fungerar finfint. Problemet ligger i att "stänga" den, det fungerar riktigt skitdåligt.
Danne VMedlem sedan aug. 20067 685 inlägg Jag har suttit och försökt fatta vad det är du egentligen vill...är det så här:
Användaren ska se en iframe öppnas (i index.html på sajt 2) men ska kunna "stänga" framen om han/hon vill via t.ex. en länk på sidan - förslagsvis utanför iframen. Är det rätt uppfattat?
Själv blir jag alldeles rysk när jag ser folk krångla till och bl.a. länka till skripter på andra sajter, men det är förstås inte min business - och du har säkert ett bra skäl. Likaså ett bra skäl varför först ha en iframe öppnad via ett javascript och inte bara ha den i koden direkt. Sen fattar jag inte heller varför folk ska kunna "stänga" iframen. Det verkar något rörigt.
Dessutom: Om du vill ha nåt som öppnar/stänger, så är ju inte en iframe vad du ska använda, utan t.ex. en div (absolut positionerad).
Jag är ingen javascriptguru, men om jag skulle ha samma konstiga problem så skulle jag nog helt enkelt skapa en identisk sida (som index.html alltså) men utan det där javascriptet och följaktligen utan nån iframe som skapas.
Så när nån har index.html uppe men vill att iframen ska försvinna, så klickar man bara på länken som leder till den iframe-fria, men i övrigt identiska, sidan.
Men jag känner ju inte till förutsättningarna så det kanske inte funkar. Eller så är mitt förslag alldeles för o-krångligt. :)
phredMedlem sedan nov. 2005333 inlägg Hehe Danne ;)
Jag förstår att det inte är lätt att förstå vad jag menar i detta.
grejjen är den att det som är enkelt för användarna brukar allt som oftast vara "o-krångligt" för utvecklaren.
Du har förstått det rätt, förutom att "stäng länken" ska finnas i den sida som öppnas(iframe.asp)
Jag ska försöka få ihop en demo av det hela, måste bara skala ner det först.