Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Położenie wiersza względem div - offsetTop
klaudio
post 31.05.2012, 22:36:05
Post #1





Grupa: Zarejestrowani
Postów: 37
Pomógł: 0
Dołączył: 19.01.2012

Ostrzeżenie: (0%)
-----


Witam

Mam taki problem. Mam DIV a w nim tabelkę. Tabelka zawiera 10 wierszy, każdy z wierszy ma na onclick funkcje "xxx". Po kliknięciu na jakiś wiersz wyświetla się alert z położeniem wiersza od góry tabeli w pixelach (czyli odległości miedzy wierszem a górna krawędzią tabeli). Mój problem polega na tym, że chce aby alert wyświetlał mi odległość klikniętego wiersza, ale nie miedzy wierszem a tabelka, tylko zewnętrznym div'em.

Z góry dziękuje za pomoc!!!

Przykład:


<html>
<body>


<div id="mydiv" style="height:130px; width:370px; font-size:12px; overflow:auto; border: 1px solid red;"> // zewnetrzny div
<table id="mytable" width="350" border="1" cellspacing="1" cellpadding="2">
<tr onclick="xxx(this)"><td>1</td></tr>
<tr onclick="xxx(this)"><td>2</td></tr>
<tr onclick="xxx(this)"><td>3</td></tr>
<tr onclick="xxx(this)"><td>4</td></tr>
<tr onclick="xxx(this)"><td>5</td></tr>
<tr onclick="xxx(this)"><td>6</td></tr>
<tr onclick="xxx(this)"><td>7</td></tr>
<tr onclick="xxx(this)"><td>8</td></tr>
<tr onclick="xxx(this)"><td>9</td></tr>
<tr onclick="xxx(this)"><td>10</td></tr>
</table>
</div>

<script>
var mytable = document.getElementById("mytable");

function xxx(obj) {
alert(mytable.rows[obj.rowIndex].offsetTop);
}

</script>

</body>
</html>

Go to the top of the page
+Quote Post
AdIoS_Neo
post 2.06.2012, 16:43:23
Post #2





Grupa: Zarejestrowani
Postów: 159
Pomógł: 43
Dołączył: 8.03.2009

Ostrzeżenie: (0%)
-----


Witam,
[JAVASCRIPT] pobierz, plaintext
  1. <script>
  2. var mytable = document.getElementById("mytable");
  3.  
  4. function xxx(obj) {
  5. alert("odległość wiersza od tabeli: " + mytable.rows[obj.rowIndex].offsetTop + "\nOdległość tabeli od diva:" + mytable.offsetTop);
  6. alert(mytable.rows[obj.rowIndex].offsetTop + mytable.offsetTop);
  7. }
  8. </script>
[JAVASCRIPT] pobierz, plaintext
wink.gif
Go to the top of the page
+Quote Post
klaudio
post 5.06.2012, 10:48:00
Post #3





Grupa: Zarejestrowani
Postów: 37
Pomógł: 0
Dołączył: 19.01.2012

Ostrzeżenie: (0%)
-----


Cytat(AdIoS_Neo @ 2.06.2012, 17:43:23 ) *
Witam,
[JAVASCRIPT] pobierz, plaintext
  1. <script>
  2. var mytable = document.getElementById("mytable");
  3.  
  4. function xxx(obj) {
  5. alert("odległość wiersza od tabeli: " + mytable.rows[obj.rowIndex].offsetTop + "\nOdległość tabeli od diva:" + mytable.offsetTop);
  6. alert(mytable.rows[obj.rowIndex].offsetTop + mytable.offsetTop);
  7. }
  8. </script>
[JAVASCRIPT] pobierz, plaintext
wink.gif


Wszystko jest ok tylko ja potrzebuje odległość wiersza od diva obejmujacego tabele sad.gif
Go to the top of the page
+Quote Post
AdIoS_Neo
post 5.06.2012, 15:28:59
Post #4





Grupa: Zarejestrowani
Postów: 159
Pomógł: 43
Dołączył: 8.03.2009

Ostrzeżenie: (0%)
-----


[JAVASCRIPT] pobierz, plaintext
  1. alert(mytable.rows[obj.rowIndex].offsetTop + mytable.offsetTop);
[JAVASCRIPT] pobierz, plaintext

Odległośc wiersza od tabeli + odległość tabeli od Div'a = odległość wiersza od div'a
Czy ja czegoś nie rozumiem ?
Go to the top of the page
+Quote Post
klaudio
post 6.06.2012, 10:01:44
Post #5





Grupa: Zarejestrowani
Postów: 37
Pomógł: 0
Dołączył: 19.01.2012

Ostrzeżenie: (0%)
-----


Cytat(AdIoS_Neo @ 5.06.2012, 16:28:59 ) *
[JAVASCRIPT] pobierz, plaintext
  1. alert(mytable.rows[obj.rowIndex].offsetTop + mytable.offsetTop);
[JAVASCRIPT] pobierz, plaintext

Odległośc wiersza od tabeli + odległość tabeli od Div'a = odległość wiersza od div'a
Czy ja czegoś nie rozumiem ?


Wiec w tym wypadku dostaje caly czas stala wartosc bo (mytable.offsetTop) jest u mnie zero.
[JAVASCRIPT] pobierz, plaintext
  1. alert(mytable.rows[obj.rowIndex].offsetTop + mytable.offsetTop);
[JAVASCRIPT] pobierz, plaintext


Moze wytlumacze jasniej o co mi chodzi bo moze namieszalem:)

Wiec chodzi mi o to ze np. na kazdym z wierszy jest funkcja zwracajaca odleglosc wiersza od diva, czyli jak tabela ma 200 wierszy, ma skrolla i jest tak wysoka ze jest w stanie wyswietlic tylko 20 wierszy, to chodzi mi o to ze np:

Klikam w wiersz i funkcja mi zwraca ze ten wiersz ktory kliknolem jest w odleglosci np. 300px od diva otaczajacego tabele, teraz jade skrolem o 200px na dol i klikam na ten sam wiersz to funkcja mi zwraca ze teraz jest on w odleglosci 100px od diva, jade skrolem dalej i ten wiersz sie chowa to on juz mnie nie interesuje. Tylko klikam w nastepny ktory widze i wyswietla mi ze ten ma np. 200px od diva pojade skrollem w dol o 100px to i klikne w ten co poprzednio to wyswietli mi 100px i tak w kolko. Mnie interesuje tylko to co jest widocznie w divie co sie dzieje poza nim to juz mnie nie interesuje.

Pozdrawiam:)
Go to the top of the page
+Quote Post
AdIoS_Neo
post 6.06.2012, 11:39:35
Post #6





Grupa: Zarejestrowani
Postów: 159
Pomógł: 43
Dołączył: 8.03.2009

Ostrzeżenie: (0%)
-----


W takim razie to powinno działać:
[JAVASCRIPT] pobierz, plaintext
  1. <script>
  2. function xxx(obj) {
  3. alert(document.getElementById("mytable").rows[obj.rowIndex].offsetTop - document.getElementById("mydiv").scrollTop);
  4. }
  5. </script>
[JAVASCRIPT] pobierz, plaintext
Go to the top of the page
+Quote Post
klaudio
post 6.06.2012, 16:10:47
Post #7





Grupa: Zarejestrowani
Postów: 37
Pomógł: 0
Dołączył: 19.01.2012

Ostrzeżenie: (0%)
-----


JESTES WIELKI Lkingsmiley.png

Dziala tak jak chcialem, wielkie dzieki.

Pozdrawiam

smile.gif
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 28.06.2025 - 20:39