Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php + js] skracanie linijek
Forum PHP.pl > Forum > Przedszkole
Balon
Więc tak znalazłem sobie taki skrypcik i go przerobiłem trochę:
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <title>Tooltip</title>
  4. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-2" />
  5.  
  6. <style type="text/css">
  7. body{text-align:center}
  8. img {display:block;margin:auto}
  9.  
  10. #tooltip {
  11. /* WYGLĄD */
  12. text-align:left;
  13. white-space:nowrap;
  14. color:#fff;
  15. font:normal bold 10px Verdana, sans-serif;
  16.  
  17. padding:4px;
  18. /*background:#f2f2f2;*/
  19. background-image: url('bg.gif');
  20.  
  21. /* ROZMIESZCZENIE */
  22. position:absolute;
  23. margin-top:25px; /* odległość w pionie od kursora myszy */
  24. }
  25.  
  26. <script type="text/javascript">
  27. <!-- <![CDATA[
  28. /*****************************************
  29. Copyright (c) 2004 Tomasz Elendt- Eluś
  30. this script is free for non-commercial use
  31. *****************************************/
  32. function tooltip(d,E,b,i,a){
  33. d=document;E=d.documentElement;b=d.body;if(!E)return;
  34. for(i=0;a=b.getElementsByTagName("a")[i];i++){
  35. if(a.title){
  36. with(a.t=d.createElement("div")){
  37. id="tooltip"
  38. innerHTML=a.title.replace(/\|/g,"<br />")
  39. }
  40. a.onmouseover=function(e){
  41. with(this){title="";onmousemove(e)}
  42. b.appendChild(this.t)
  43. }
  44. a.onmouseout=function(x){
  45. with(this){title=t.innerHTML.replace(/<br \/>/g,"\|")}
  46. if(x=d.getElementById("tooltip"))b.removeChild(x)
  47. }
  48. a.onmousemove=function(e){
  49. e=e||event;with(this.t.style){
  50. left=e.clientX+(E.scrollLeft||b.scrollLeft)+"px"
  51. top=e.clientY+(E.scrollTop||b.scrollTop)+"px"
  52. }
  53. }
  54. }
  55. }
  56. }
  57. function addEvent(O,E,F,x){
  58. return(x=O.addEventListener)?x(E,F,1):(x=O.attachEvent)?x('on'+E,F):!1
  59. }
  60. addEvent(window,'load',tooltip);
  61.  
  62. // ]]> -->
  63. </head>
  64.  
  65. <body xml:lang="pl">
  66. <div id="main">
  67. <a href="tooltip.html" title="<table border=0><tr><td><img src=plik.gif></td><td style=font: 9px normal tahoma>
  68. Jedno z lepszych skryptów for jakie może być zawiera bardzo dużo dodatków.
  69. Więcej na www.przemo.org</td></tr></table>">GoD P2P (21923)</a>
  70. </div>
  71.  
  72. </body>
  73.  
  74. </html>


Jednak wpisywany tekst do tego tooltipa sam się nie dopasuje np. do szerokosci 200 px tylko bedzie lecial w bok ile tylko sie da. Mozna temu zapobiec dodajac znak | ktory w tym skrypcie oznacza nowa linie. Teraz mam nastepujacy problem. Bo do tego tooltipa chcialem pobierac tresc jednak ta tresc musi sie zmiescic w szerokosci 200px. I wpadlem na pomysl zebym pobieral tresc z bazy, najpierw skracal go za pomoca strstrs() do np. 300 liter i potem dzielil to na fragmenty po 50 liter (jednak msuza to byc cale wyrazy a nie uciete slowa) i wrzucal do tablicy. Potem wrzucal do petli ktora robie nowe wiersze ktorej zawartoscia sa te elementy tablicy.

Mam nadzieje ze ktos to zrozumial. Ja niestety nie jest w stanie wymyslic sobie jak to mialoby wygladac. Czy ktos z Was moglby mi pokazac w jaki sposob to zrobic ?
Vogel
explode (po spacjach) -> array_chunk (po 50elelemntow) -> join
Balon
To mnie przerasta... To czy mozna byloby zrobic to w taki sposob ze biore ta tresc i dziele ja na n czesci(po 50 liter) i wrzucic je do tablic... reszte będę chyba potrafił zrobić więc proszę o podanie przykładu takiego zastosowania... Dziekuję, pozdrawiam winksmiley.jpg
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.