Autor Zpráva
TomasJ
Profil
Ahoj. Dá se nějak zjistit titulek stránky, která je vložená do <iframe>?
Například stranka.html:
<html>
  <head>
    <title>Titulek stránky stranka.html</title>
  </head>
  <body>
    Nějaký obsah stránky stranka.html
  </body>
</html>

index.html:
<html>
  <head>
    <title>Titulek, který chci přepsat</title>
  </head>
  <body>
    <iframe src="stranka.html"></iframe>
    <!-- Nějak potřebuji vytáhnout titulek z toho iframu do JS a nastavit aktuálnímu oknu, nebo nějak (pokud jde) přímo nastavit titulek okna z iframu. -->
  </body>
</html>
Chamurappi
Profil
Reaguji na TomaseJ:
<iframe onload="document.title = this.contentWindow.document.title"></iframe>
margin
Profil *
Mimo téma:
Konstrukcew, kterou používáš nyní, vkládání obsahu pomocí IFRAME, má téměř všechny nevýhody rámů.
Výhodnější je do obsahu pomocí IFRAME vkládat menu, pak se obejdeš bez manipulace s TITLE.
_es
Profil
TomasJ:
Alebo daj do stranka.html hneď za </title>:
<script>top.title=document.title</script>
Voči riešeniu v [#2] tu bude mať výhodu, že sa titulok zmení skôr.
TomasJ
Profil
margin:
Já tohle uvedl jako příklad. Žádnou stránku jsem obyčejně nevkládal jako iframe. Teď ovšem vkládám, něco co vůbec nesouvisí se stránkou, ale potřebuji ovlivnit titulkem iframu celkový titulek okna.

Chamurappi, _es:
Díky.
Použiji nejspíš ten tvůj _es, protože titulek stránky budu měnit vícekrát, než jen při načtení.

EDIT:
Nevím proč, Firefox mi píše, že není přístup k vlastnosti title. Tedy přesněji mi to píše u kódu od _es.
Je to zapříčiněno tím, že obě stránky jsou na jiné doméně?
Radek9
Profil
TomasJ:
Je to zapříčiněno tím, že obě stránky jsou na jiné doméně?
Ano.
_es
Profil
TomasJ:
Aký máš dôvod prevádzkovať web na dvoch doménach? Nefunguje ti v tom prípade asi ani Chamurappiho riešenie, nie?
TomasJ
Profil
_es:
Nefunguje. Důvod je ten, že je web na serveru u kamaráda (jeho server má funkce které free servery nemají) a nechci nikde zveřejňovat web s jeho doménou. Jelikož web není pro mě, ale zase pro někoho jiného, potřebuji stránku vložit do iframe, aby nebylo na první pohled vidět, že se web nachází jinde než se zobrazuje. Ideální by bylo podstrčení přes htaccess ale ten asi taky nefunguje když chci podstrčit stránku z jiné domény že?
_es
Profil
TomasJ:
potřebuji stránku vložit do iframe, aby nebylo na první pohled vidět, že se web nachází jinde než se zobrazuje.
Tento cieľ je práve jeden z dôvodov, prečo to nejde. Každý si predsa aj tak môže jednoducho zistiť adresu načítanú do iframe.
margin
Profil *
Co třebas tohle: http://jecas.cz/php-proxy
TomasJ
Profil
_es:
Každý si ji zjistit může, ale web bude cílený převážně lidem, kteří ani nevědí, že existuje zdrojový kód. A ti, co si ho zobrazí, tak je to jedno. Jde o to, aby web nebyl přímo sdílený, ale aspoň takto "schovaný" v iframe.

margin:
No už je to jedno, každopádně díky, přes toto by to jistě fungovalo.

Vyřešil jsem to tak, že ajaxem na free webu volám php, ve kterém načítám potřebné věci přes file_get_contents().
_es
Profil
TomasJ:
Vyřešil jsem to tak, že ajaxem na free webu volám php, ve kterém načítám potřebné věci přes file_get_contents().
A nebolo by už jednoduchšie to spraviť všetko cez ten „free web“?
TomasJ
Profil
_es:
Jak jsem psal v [#8], free web nemá všechny funkce, které potřebuji.
_es
Profil
TomasJ:
No a nedajú sa tie chýbajúce funkcie nahradiť inými funkciami či inak? Presúvať zbytočne dáta medzi servermi asi nie je najlepšie.
TomasJ
Profil
_es:
Je to jen dočasné řešení, než si pořídí vlastní server. Nevím, jestli se třeba socket_create() dá nahradit...
Kubo2
Profil
TomasJ:
Napríklad funkciou fsockopen() a súborovými funkciami...?
TomasJ
Profil
Kubo2:
Měl bych to upřesnit. TCP server napsaný v PHP.
Ale zacházíme mimo téma. Už je to vyřešené.

Nastavit titulek z iframu můžu jen na stejné doméně, takže jsem udělal dočasné řešení, než si dotyčný nepořídí svůj server. Děkuji vám za rady, určitě se mi v něčem hodí.

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0