Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > it.comp.www.php > #21745
| From | Sandro kensan <kensan@kensan.it> |
|---|---|
| Newsgroups | it.comp.www.php |
| Subject | trovare la metà di un DOM |
| Date | 2017-11-09 23:35 +0100 |
| Message-ID | <f6k3h2Feg3iU1@mid.individual.net> (permalink) |
Vorrei trovare la metà di una pagina html con operazioni sul DOM, in
pratica vorrei inserire la pubblicità a metà di un testo che non
contiene tag <p> ma solo <br>.
La mia idea è quella di trovare tutti i rami dell'albero che partono
dalla radice (<body>), trovarne la lunghezza in termini di solo testo
contenuto e poi dividere a metà in modo che il testo contenuto "sopra"
N-1 e "sotto" al ramo N sia circa uguale. Quindi inserire la pubblicità
tra il ramo N-1 e il ramo N.
Con "sopra" intendo tra il primo ramo ovvero quello più vicino a <body>
e N-1 mentre con "sotto" intendo tra il ramo N e l'ultimo ramo più
vicino a </body>.
Come ordinamento del DOM ho in mente quello presente nel file html, non
so se il DOM rispetta l'ordinamento del file ma credo di si.
Esempio:
<body>
Ciao ciao<br>
<blockquote>
Ciao ciao <a href="">Ciao ciao</a>
</blockquote>
<a href="">Ciao ciao</a>
Ciao ciao<br>
Ciao ciao
</body>
che indentato fornisce i rami e un ordinamento:
<body>
Ciao ciao
<br>
<blockquote>
Ciao ciao <a href="">Ciao ciao</a>
</blockquote>
<a href="">Ciao ciao</a>
Ciao ciao
<br>
Ciao ciao
</body>
Gli esperti del ng possono fornirmi una intelaiatura di programma che
faccia uso di funzioni tipo queste?:
$dom= new DOMDocument();
$dom->loadHTML($strHtml);
//trim lasts <br> in the DOM
$element = $dom->getElementsByTagName("body")->item(0);
$childs = $element->childNodes;
for ($i = $childs->length; --$i >= 0; ) {
$el = $childs->item($i);
if ($el->nodeName == "br") $el->parentNode->removeChild($el);
else break;
}
In particolare mi servirebbe una procedura ricorsiva che trovi il
"value" di un ramo ($el).
--
Sandro kensan www.kensan.it & www.qiqi.it geek site
Saluto gli agenti della NSA - Hello NSA - www.nsa.gov
Back to it.comp.www.php | Previous | Next | Find similar | Unroll thread
trovare la metà di un DOM Sandro kensan <kensan@kensan.it> - 2017-11-09 23:35 +0100
csiph-web