lamcpp
10.11.2010, 09:46:44
Mam stronę ze stałą wysokoscią okresloną na 3000 px. Na stronie są umieszczane długie artykuły, chciałbym aby w przypadku gdy artykuł przekroczy 3000 px, by pojawiało sie na dole stronnicowanie, tak by użytkownik mógł zobaczyc dalszą czesc artykułu. Jak takie cos zrobic?
rocktech.pl
10.11.2010, 10:31:47
JavaScript.
Dzielisz tekst na odpowiednią liczbę znaków lub wstawiasz w każdy tekst np. <!-- pagebreak --> i parsujesz wedle tego wzorca. A potem podzielone fragmenty ubierasz w divy i wyświetlasz tylko pierwszy. Pozostaje tylko kwestia wyświetlenia i nawigacji.
Jeżeli używasz jquerry czy prototype (jeżeli prototype to napisz mam gotowy kod) to jakaś wtyczka ala
to albo własne rozwiązanie.
lamcpp
11.11.2010, 09:22:35
a jakis przykład kodu z dzieleniem tekstu na: <!-- pagebreak -->
CuteOne
11.11.2010, 10:04:08
$nr = (!$_GET['page']) ? 0 : $_GET['page'];//nr strony aktualnie przeglądanej
$nr++;
$text = "hfeufh hfuiehf hfrueikw<!-- pagebreak -->jerwj hfrei rehfieg<!-- pagebreak -->jfreiog";
$exp = explode('<!-- pagebreak -->', $text);
$max = 3; //maxymalna ilość bagebreakow na stronę
if($count > 6 && ($nr*$max) < $count) { // jeżeli pagebreaków jest więcej niż 6 i nr strony * ilosc pagebreakow na stronę jest mniejsza od pagebreakow w tekście
$nowy_tekst = '';
for($i=$nr;$i<$nr*$max; $++) {
$nowy_tekst .= $exp[$i];
}
}
// tu wstaw paginację
}
else {
$nowy_text = $text; //zwraca stary tekst
$page = 1; // zwraca ilość stron
}
lamcpp
11.11.2010, 12:20:08
coś ten kod nie bardzo chce działać, czy ktos moze wie dlaczego?
moto0095
11.11.2010, 13:22:31
Ja kiedyś napisałem dla własnych potrzeb takie coś :
$text = "jeden dwa trzy cztery"; //treść do paginacji
$ins = 2; // ilość słów na stronie
$page = !isset($_GET['page']) ? 0
: $_GET['page']-1; $start = $page*$ins;
$text = explode(" ", $text); // oczywiście tutaj " " możesz zamienić na co chcesz :)
$stron = round($iw/$ins);
for($i=$start; $i<$ins+$start; $i++) {
}
for($i=0; $i<$stron; $i++) {
echo "<a href=\"?page=".($i+1)."\">".($i+1)."</a>"; }
CuteOne
12.11.2010, 04:39:27
lamcpp:: ale to nie ma działać... napisałem jedynie przykład jak to może wyglądać. przeanalizuj i przepisz tak jak być powinno