Toon posts:

[js] Eigenschap van een tag doorgeven aan pop-up.

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik ben met het volgende bezig en ik kom er maar niet uit. Ik zal proberen het zo duidelijk mogelijk uit te leggen. Ik ben bezig met een wysiwyg editor in de browser. Dit doe ik door een pagina te editten in een IFRAME

Nu kan men rijen en cellen invoegen. Deze hebben allemaal een ID en een vaste breedte (width) Dus bijvoorbeeld:

<td id="td1_1" width="200">Ik sta hier met mijn cursor.</td>

Nu wil ik op de plek waar ik sta een afbeelding invoegen. Dit doe ik door een pop-up te openen en dan naar een plaatje te bladeren. Dit werkt allemaal ok. Het probleem is dus dat het plaatje volgens zijn eigen formaat wordt ingevoegd in de cel en de hele tabel dus oprekt.

Mooi zou dus zijn om de breedte van de tabel mee te geven aan het pop-up scherm en dan het plaatje met [img]"blabla"[/img] terug te geven.

Ik kan met het volgende iets pasten in het iframe:
var selectie = iframe_hoofd.document.selection;
var pointer = selectie.createRange();

Hoe kom ik nu achter de breedte van de cel waar op dat moment de cursor staat? Kan dat met getElementById()? Alvast bedankt voor tips en suggesties.

  • crisp
  • Registratie: Februari 2000
  • Laatst online: 01:01

crisp

Devver

Pixelated

yep:
JavaScript:
1
document.getElementById('cell').clientWidth

Intentionally left blank


Verwijderd

Topicstarter
ok dat is op zich wel relaxed, maar wat is cell? Is dat de cell waar de cursor staat? En hoe kom ik erachter welke dat is?

Verwijderd

Topicstarter
Het volgende werkt niet, maar ik heb wel het gevoel dat ik heel dichtbij zit: Wie ziet mijn fout?

code:
1
2
3
4
5
6
function breedte()
{
    var selectie = opener.iframe_hoofd.document.selection;
    var pointer = selectie.createRange();
    alert(opener.iframe_hoofd.document.getElementById(pointer).width);
}

  • Pelle
  • Registratie: Januari 2001
  • Laatst online: 02:36

Pelle

🚴‍♂️


En wat zegt crisp?
code:
1
.clientWidth

Precies :Y)

Verwijderd

Topicstarter
werkt ook niet

  • crisp
  • Registratie: Februari 2000
  • Laatst online: 01:01

crisp

Devver

Pixelated

en dit:
JavaScript:
1
2
3
4
5
6
7
function breedte()
{
    var selectie = opener.iframe_hoofd.document.selection;
    var pointer = selectie.createRange();
    var tablecell = pointer.parentElement();
    alert(tablecell.clientWidth);
}

?

Intentionally left blank


Verwijderd

Topicstarter
Hell yeah!!! dat wel! :D Superbedankt, ik kan weer even verder.

  • Pelle
  • Registratie: Januari 2001
  • Laatst online: 02:36

Pelle

🚴‍♂️

* Pelle doet Tommienbp het vriendelijke verzoek om voortaan zelf wat meer je best te doen:
http://gathering.tweakers.net/forum/find/poster/12100

Het is dat crisp zo goed is geweest om wat van z'n kostbare tijd beschikbaar te stellen, anders had je nu een slotje gehad.
Pagina: 1