Kirjautuminen

Haku

Tehtävät

Keskustelu: Nettisivujen teko: Teksti popup ikkunaan "emätiedostosta"

Sivun loppuun

pistemies [05.03.2011 12:57:25]

#

Minulla joitakin vuosia sitten oli skripti, jota ei nyt ole.
Eli tarkoitus on javascript popup ikkunaan tuleva teksti määritellä päätiedostossa index.php, joka popikkunan avaa. En vaan hoksaa, miten tämä käytännössä hoituu. Olen ohjeita kahlannaut kovasti läpi mutta ei meinaa löytyä...tosin siihen sitten tulisi myös pikkukuva, mutta sen voinee liittää siihen myös img-tagilla, kuva ei voi määritellä ulkoisessa tiedostossa... tai ei kannata tehdä niin paljon ulkoisia tiedostoja..

The Alchemist [05.03.2011 14:36:59]

#

Yksinkertaisimman dialogi-ikkunan saa aikaan seuraavalla JavaScriptin pätkällä: alert("Tässä on tekstiä!").

Jos haluat jotain monimutkaisempaa, vähemmän ärsyttävää, niin joudut vääntämään ikkunat itse esim. diviä käyttäen (ellet halua käyttää jotain valmista JS-kirjastoa).

function openPopup(text, picture) {
  // Määrittele tyyli valmiiksi CSS-tiedostossa

  var p = new Image();
  p.src = picture;

  var w = document.createElement("div");

  w.setAttribute("id", "popup");
  w.innerHTML = "<p>" + text "</p>";
  w.appendChild(p);

  document.body.appendChild(w);
}

function closePopup() {
  var w = document.getElementById("popup");
  if (w)
    document.body.removeChild(w);
}

Dialogin saat auki kutsumalla funktiota openPopup tarvittavine parametreineen. En ymmärtänyt muusta selityksestäsi yhtään mitään, joten en voi auttaa sen suhteen, miten tuo kutsu tai parametrina välitettävä teksti olisi järkevintä määrittää dokumenttiin.

P.S. Popupia ei aukaise mikään tiedosto vaan selaimen suorittama skripti.
P.P.S. En testannut koodia vaan heitin sen tähän kylmiltään, joten varaudu debuggaamaan.

pistemies [05.03.2011 15:44:45]

#

Tarkoitus olisi ihan erillinen popup-ikkuna, jonka sisälle tulostuva teksti löytyy osittain linkista, josta javascript muuttujaa klikataan.
Tuossa esimerkissä tehdään div, ehkä tuokin on sopiva, pitää kysyä sivun omistajalta hyväksyykö sen....

The Alchemist [05.03.2011 15:48:21]

#

Jos ongelmiin haluaa apua, niin silloin pitäisi pystyä kertomaan, mikä on ongelma.

Mikäli tarkoitus on vain näyttää viestejä käyttäjälle, niin uuden selainikkunan aukaiseminen saa käyttäjät vihaamaan sinua. Jos taas tarvitset ihan oikeasti uuden ikkunan, niin silloin voit välittää tarvittavat tiedot ihan normaalisti käyttäen get-muuttujia.

<a href="popup.php?message=tässä on tekstiä" target="_new">Popup</a>

pistemies [05.03.2011 19:02:30]

#

Kaksi ajatusta sitte tähän.
Ohjelma lightbox tekee siten kuin haluan, paitsi että se on tähän turhan järeä työkalu. Se tosin ei tee varsinaista popup-ikkunaa, jollainen minulla vuosia sitten oli ja johon syötettiin tekstiä javascript arraysta. Muistaakseni sama rivi jossa tekstisyötettiin, määritteli ikkunan koon ja sijaninnin pikseleinä.

-tossu- [05.03.2011 19:20:25]

#

JS-popup-ikkunaan voi laittaa sisältöä ilman toista tiedostoa näin:

var ikkuna = window.open ("", "", "resizable=1,width=340,height=280");
ikkuna.document.write ("<html><head><title>Otsikko</title></head><body><p>Tekstiä...</p></body></html>");

pistemies [05.03.2011 19:42:54]

#

Siinähän se oli!
Pystyyhän siihen laittamaa textiä!!

The Alchemist [05.03.2011 22:31:38]

#

Asiat voi toki tehdä huonostikin, jos niin ihan väistämättä haluaa ja siihen tarkoituksella pyrkii.

pistemies [06.03.2011 17:18:53]

#

The Alchemist kirjoitti:

Asiat voi toki tehdä huonostikin, jos niin ihan väistämättä haluaa ja siihen tarkoituksella pyrkii.

Niimpä. Mahtoikohan osa hiihtäjistä tehdä ne tänään siten?

esajeejee [09.03.2011 23:32:27]

#

voit laittaa vaikka kuinka paljon sisältöä linkkiin näin

linkki

ie8 vissiin ottaa ekat 32 kilotavua mutta muut selaimet ottaa vaikka kuinka paljon

kyseinen linkki avaa html sivun jossa sisältönä on "jeejee". sisältö tulee siis olla base64 encodettuna pilkun jälkeen

oikea linkki on siis

data:text/html;base64,amVlamVl

ilman //

ohjelmointiputka ei anna tehdä oiketa linkkiä tosta vaikka kuinka koitin eli copypastee osoteriville ja testaa. Myös aivan mitä tahansa dataa voi pistää linkkiin kuhan vaihtaa sisältötyypin esim image/png


Sivun alkuun

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta