Avatar billede -kenner- Nybegynder
07. maj 2006 - 16:32 Der er 31 kommentarer og
1 løsning

Font size, type og color skal ogsaa advendes paa tekst i iframe!

Hej eksperter,

Jeg har lige et problem, som jeg ikke selv kunne loese. Jeg har lavet et iframe, som indeholder noget tekst, som jeg tilbyder mine brugere til at smide ind paa deres egne hjemmesider osv.

Mit problem er, hvordan kan deres font type, size og color blive transporteret intil iframet, saa de ikke skal angive den information, men at det bare opdateres automatisk.

Det ville lave den perfekte produkt loesning for mig i forlaengelse med en gennemsigtig baggrund, som jeg allered ehar scripts til.

OBS. De har ikke mulighed for at goere noget i head sektionen overhovedet.

Mvh Kenneth
Avatar billede olebole Juniormester
07. maj 2006 - 16:52 #1
<ole>

Der findes ingen mulighed for, at de kan få kontrol over udseendet. Det skal styres fra filen, der importeres i iframe'en ... og den har kun du styr over

/mvh
</bole>
Avatar billede olebole Juniormester
07. maj 2006 - 16:53 #2
- de kan hverken 'nå' filen med CSS eller scripts
Avatar billede -kenner- Nybegynder
07. maj 2006 - 16:55 #3
okay, det var alt jeg behoevede at vide :)

svar?
Avatar billede olebole Juniormester
07. maj 2006 - 17:02 #4
Har du overvejet en .js-fil i stedet:

var a = [];
a.push( "<div class='divA'>Her står en tekst</div>" );
a.push( "<div class='divB'>Her står en tekst mere</div>" );
document.write(a.join("\r\n"));

- så kan en anden få skrevet HTML'en ud med:
    <script type="text/JavaScript" src="http://www.dit_domain.dk/sti/til/fil.js"></script>

- og de kan style dem i deres eget stylesheet med klasserne 'divA' og 'divB'.

Dette er naturligvis kun et lille eksempel, der kan udvides ganske betydeligt  :)
Avatar billede olebole Juniormester
07. maj 2006 - 17:04 #5
- og du kan også lade .js-filen være en .php-fil i stedet. Så kan du lade indholdet være dynamisk og/eller lave statistik, m.m.
Avatar billede -kenner- Nybegynder
07. maj 2006 - 17:10 #6
hmm.. jeg er ikke sikker paa om det vil virke, da brugeren der skal sende tekst formaterings informationen til mig ikke har mulighed for upload af filer overhovedet, og kun har adgang til body sektionen af siden.

der imod kan jeg uploade .js filer og alt det der.

Men er det muligt at samle formatering op med .js hvis han skriver noget a la <font size="2" type="arial" color="red"><iframe name="mitIframe"></iframe></iframe></font>

eller maaske hvis teksten formateres via bodytagget eller en includeret CSS-fil.
Avatar billede olebole Juniormester
07. maj 2006 - 17:34 #7
Jeg kan ikke få øje på, hvorfor en .js-fil ikke kan bruges. Det bruges til den slags på millioner af sites, verden over. Script-tagget indsættes det sted på siden, hvor HTML'en fra dig skal udskrives:

<body>
<p>blablabla</p>
<table>
  <td>En nabocelle til din HTML</td>
  <tr><td><script type="text/JavaScript" src="http://www.dit_domain.dk/sti/til/fil.js"></script>
</td></tr>
</table>
<div>Øvle bøvle blablabla</div>
</body>
Avatar billede olebole Juniormester
07. maj 2006 - 17:35 #8
*host - host*

<body>
<p>blablabla</p>
<table>
  <tr><td>En nabocelle til din HTML</td>
  <td><script type="text/JavaScript" src="http://www.dit_domain.dk/sti/til/fil.js"></script>
</td></tr>
</table>
<div>Øvle bøvle blablabla</div>
</body>
Avatar billede -kenner- Nybegynder
07. maj 2006 - 20:41 #9
saa <script type="text/JavaScript" src="http://www.dit_domain.dk/sti/til/fil.js"></script> ryger ind paa siden der skal give tekst formatering til iframet?
Avatar billede -kenner- Nybegynder
07. maj 2006 - 20:42 #10
jeg tror ikke at du forstaar, siden der kun kan skrives i body framet skal give tekst formatering til teksten der er i iframet.
Avatar billede -kenner- Nybegynder
07. maj 2006 - 20:46 #11
oh. Du vil have at jeg skal bruge.js istedet for et iframe. i see.

det kan da ogsaa vaere at det vil virke, det maa jeg lige eksperimentere med :)
Avatar billede olebole Juniormester
07. maj 2006 - 21:28 #12
Yups - det er lige præcis tanken  ;o)
Avatar billede -kenner- Nybegynder
07. maj 2006 - 22:03 #13
Det kan jeg ikke faa til at virke, jeg har proevet:
<script type="text/php" src="fil.php"></script>
<script language="php" src="fil.php"></script>
<script type="text/php" language="php" src="fil.php"></script>

intet af det virker.
Avatar billede mclemens Nybegynder
08. maj 2006 - 02:01 #14
... 7-9-13 ... noget i denne stil måske ...

.htaccess filen på dit domæne:
------------------------------

RewriteEngine on
RewriteRule ^fil.js$ mitdir/fil.php


og fil.php:
-----------
<?php
header("Content-type: application/x-javascript");
header("Cache-Control: max-age=0");

/* database forespørgsler og lignende... */

echo"alert('test...udskiftes med scriptet istedet');";

?>
Avatar billede mclemens Nybegynder
08. maj 2006 - 08:50 #15
<script type="text/javascript" src="http://ditdomonæe/fil.js"></script>
Avatar billede -kenner- Nybegynder
09. maj 2006 - 23:31 #16
.js kan da ikke koere php scripts.
Avatar billede mclemens Nybegynder
09. maj 2006 - 23:38 #17
- Jeg siger ikke at js scriptet skal køre et php script jeg siger til serveren at når der kommer en forespørgsel på fil.js så skal serveren aktivere fil.php og outputte denne fil istedet (som om at det var en .js fil d.v.s. uden at browseren får at vide at vi har viderestillet den på server basis til en php fil) - dermed kan du outputte dynamisk indhold i din javascript fil (da det rent faktisk er en php fil som serveren sådan set kører) - jeg har lavet tilsvarende fusk med min css fil ...

- max-age gør at din js fil (det vil sige php filen's output) ikke bliver lagt i cache ved browseren - så det vil være muligt at sende filen for hver side ... hvis det nu er noget banner request fra en db. f.eks ... ellers skal du nok fjerne max-age headeren ... :)
Avatar billede olebole Juniormester
10. maj 2006 - 02:17 #18
mclemens >> der er ingen grund til at lave mod-rewrite. Browseren er rystende ligeglad med, hvad din fil hedder til efternavn ... js, asp eller php. Det samme gælder css- og xml-filer:
    <script type="text/JavaScript" src="http://www.domain.dk/sti/til/fil.php"></script>

Det er ikke engang nødvendigt at sætte en Content-Type header (med undtagelse af XML-filer), men det er god skik  :)
Til gengæld er det ikke mindst af hensyn til FF en god idé at fylde en streng-buffer - finde dens streng-længde - sætte en Content-Length header med værdien - og så skrive bufferen ud  :)
Avatar billede mclemens Nybegynder
10. maj 2006 - 09:19 #19
[ der er ingen grund til at lave mod-rewrite. Browseren er rystende ligeglad ... ] Ok, det troede jeg ikke :D

[ Det er ikke engang nødvendigt at sætte en Content-Type ... ] - Ok

[ Til gengæld er det ikke mindst af hensyn til FF en god idé ... ] - Den må jeg lige overveje. :)
Avatar billede -kenner- Nybegynder
11. maj 2006 - 00:11 #20
olebole> jeg kan dog ikke faa dette til at virke. <script type="text/JavaScript" src="http://www.domain.dk/sti/til/fil.php"></script>

Skal siden der aabner .php filen vaere istand tila t behandle php eller hvad er det der gaar galt?
Avatar billede olebole Juniormester
11. maj 2006 - 00:27 #21
Det virker fint ... hvad er det, der ikke virker for dig?
Hvad gør du?
Hvad står der i filen, du prøver at importere?
Avatar billede olebole Juniormester
11. maj 2006 - 00:28 #22
- og nej, der er intet PHP i det her  :)
Avatar billede miss-g Seniormester
11. maj 2006 - 00:39 #23
Jeg har på én af vores sider en iframe med nogle spil og dertil tekst. Der kan jeg da ændre på teksttype og størrelse på celler via stylesheet.

Kunne forestille mig at det er fordi hver <td> har fået en id. F.eks. id="tekst"

Og jeg så kan skrive

#tekst {
    font-family: Arial, Helvetica, sans-serif;
    font-size: 11px;
    color: #FEB7EB;
}

--------------------------------------------------

Er det ikke en mulighed?
Avatar billede miss-g Seniormester
11. maj 2006 - 00:42 #24
Eller hvis der er sat en class på, men jeg ikke har fået stylesheetet med, så kan jeg jo selv skrive den class.
Avatar billede -kenner- Nybegynder
11. maj 2006 - 00:48 #25
Der sker intet, det er problemet.


Jeg har ogsaa problemer med dette, hvis er noget i har tid og mod paa: http://www.eksperten.dk/spm/690954
Avatar billede olebole Juniormester
11. maj 2006 - 02:11 #26
Én ting ad gangen. Hvad skriver du i filen 'fil.php'?
Avatar billede -kenner- Nybegynder
11. maj 2006 - 02:56 #27
jeg henter bare noget informationen der er knyttet til URL'en i scriptet via $_GET, og saa udskriver det i et javascript.

<script type="text/JavaScript" src="http://www.domain.dk/sti/til/fil.php?a=noget"></script>
Avatar billede -kenner- Nybegynder
12. maj 2006 - 14:20 #28
nu har jeg lavet endnu mere simpelt, bare for at teste om scriptet virker, saa jeg henter en fil der kun siger:
<?php
echo"side er includeret!";
?>
oh paa en anden side har jeg dette:
<script type="text/JavaScript" src="http://www.domain.dk/sti/til/fil.php"></script>

Men intet sker.
Avatar billede mclemens Nybegynder
12. maj 2006 - 17:59 #29
tjah, du burde jo få en javascript fejl da "side er includeret!" ikke er javascript ... hvis du vil teste det kunne du jo prøve (ikke testet)

<?php
echo"document.write('side er includeret!');";
?>

eller

<?php
echo"alert('side er includeret!');";
?>
Avatar billede -kenner- Nybegynder
12. maj 2006 - 23:21 #30
alt den giver mig er "Done, but with errors on page" i statuslinien.
Avatar billede olebole Juniormester
12. maj 2006 - 23:32 #31
Det står mig ikke helt klart, hvad det er, der er så svært ved at vise os det, du skriver i filen.
Det er jo helt tydeligt, du begår nogle fejl ... hvorfor så ikke vise dem i stedet for at lade os gætte i blinde?

Don't tell us ... show us!
Avatar billede olebole Juniormester
27. december 2006 - 11:24 #32
Tak for points, men fandt du nogensinde ud af, hvad du gjorde forkert?
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester