esclkm |
|
---|---|
По поводу того что нет пажинация ajax в комментах я уже говорил
теперь хочу скаьб о другой стороне данного вопроса: Практически везде, где используется ajax пажинация присутствует код: $upf_ajax_begin = "<script type=\"text/javascript\">
//<![CDATA[
function gof(df)
{
$.ajax({
type: 'GET',
url: 'plug.php?',
data: '&r=userlatestposts&id=".$urr['user_id']."&df='+df,
beforeSend: function(){
$('#reloadf').addClass('loading');
},
success: function(msg){
$('#reloadf').removeClass('loading');
$('#reloadf').html(msg).hide().stop().fadeIn('slow');
},
error: function(msg){
$('#reloadf').removeClass('loading');
alert('".$L['plu_msg500']."');
}
});
return false;
}
//]]>
</script>
<div id='reloadf'>";
$upf_ajax_end = "</div>";
Мое мнение или доработать пажинатор текущий, хоть он уже великолепен, или дописанть функцию класса (набросок):
function sed_ajax_pajanation ($url, $data, $name, $page, $blockid)
{
$ajax_begin = "<script type=\"text/javascript\">
//<![CDATA[
function gof(".$page.")
{
$.ajax({
type: 'GET',
url: '".$url."',
data: '".$data."&".$name."='+".$page.",
beforeSend: function(){
$('#".$blockid."').addClass('loading');
},
success: function(msg){
$('#".$blockid."').removeClass('loading');
$('#".$blockid."').html(msg).hide().stop().fadeIn('slow');
},
error: function(msg){
$('#".$blockid."').removeClass('loading');
alert('".$L['plu_msg500']."');
}
});
return false;
}
//]]>
</script>
<div id='#".$blockid."'>";
$ajax_end = "</div>";
return array($ajax_begin, $ajax_end);
}
Просто использование однотипных конструкций как по мне ни есть гуд. А фукнциями и красиво и удобно - и можно начать писать ну очень быстро.... а еще лучше внедрить в сам пажинатор... Сейчас он из себя представляет 2 функции - одна стрелочки - вперед-назад, другая циферки может пускай она будет единой функцией, но после себя оставляет массив: 1. стрелочки назад 2. циферки 3. стрелочки вперед 4. чтото типа функции приведенной выше. Смысл переделки имеет место быть - так как пажинатор почемуто(уменя на старых плагинах) не совместимым стал. А переделать пажинатор 2 минуты дела. Предложение еще одно: "запихнуть" пажинатор в шаблон) тогда все станет супер пупер - и можно будет отключить вопрос по поводу альтернативного пажинатора - который сейчас иногда встречается на повестке дня... тогда можно будет за 5 сек сделать как раньше было: <1><2>[3]<4> или как сделано сейчас спасибо за внимание littledev.ru - мой маленький зарождающийся блог о котонти.
снижение стоимости программирования и снижение стоимости производства разные вещи. Первое можно скорее сравнить с раздачей работникам дешевых инструментов, чем со снижением зарплаты |
|
This post was edited by esclkm (2009-01-13 22:49, 16 years ago) |
Trustmaster |
|
---|---|
Это уже лучше, но всё равно неправильно. Я не очень одобряю то, как реализована сейчас аякс-паджинация, и dayver в курсе. Дело в том, что надо разумно писать клиентскую часть, используя парадигму jQuery, а не смесь бульдога с носорогом. Тогда всё выносится в компактную клиентскую библиотеку в виде статических JS-файлов (base.js, например), а в серверной части не используются никакие трехэтажные обработчики и вставки, а формируется обычный аккуратный XHTML с передачей данных в атрибутах. Причем без JavaScript этот код работает как будто бы и нет никакого аякса.
May the Source be with you!
|
esclkm |
|
---|---|
А по поводу запухнуть в шаблон?
littledev.ru - мой маленький зарождающийся блог о котонти.
снижение стоимости программирования и снижение стоимости производства разные вещи. Первое можно скорее сравнить с раздачей работникам дешевых инструментов, чем со снижением зарплаты |
Dayver |
|
---|---|
так уже в шаблоне кажысь
спустя некоторое время хотя да действительно уже не из шаблона...просто раньше работало по шаблону указываемому в конфиг.пхп $cfg['pagination'] = ' [%s]'; $cfg['pagination_cur'] = ' <strong>> %s <</strong>'; спустя еще некоторое время # Trustmaster : Это уже лучше, но всё равно неправильно. Я не очень одобряю то, как реализована сейчас аякс-паджинация, и dayver в курсе.да, я в курсе, подтверждаю Trustmaster : Дело в том, что надо разумно писать клиентскую часть, используя парадигму jQuery, а не смесь бульдога с носорогом. Тогда всё выносится в компактную клиентскую библиотеку в виде статических JS-файлов (base.js, например), а в серверной части не используются никакие трехэтажные обработчики и вставки, а формируется обычный аккуратный XHTML с передачей данных в атрибутах.я, против этого, ничего не имею и сам стремлюсь к такой реализации но есть одно но. Я не вижу пока возможности передавать целый масив параметров через атрибуты.....так что без OnClick не обойтись Ну, а вынести ява код который фактически везде присутствует - это я за обеими руками(да и ногами тоже) просто по началу не думал что он будет вставлен в такое количество файлов а сейчас это ясно видно и готов релизовать его вынос сразу как закончу с локализацией на урк язык Trustmaster : Причем без JavaScript этот код работает как будто бы и нет никакого аякса.так и сейчас оно будет работать по класической схеме если у пользователя отрублена ява спустя еще некоторое время да а как сейчас вставить ббкод горизонтальной линии? <hr> спустя еще некоторое время кстати этот кусок кода который будет вынесен в ява файл по идее сможет не только быть задействован в пагинации но и в других фичах для аякса esclkm:в каких именно? Pavlo Tkachenko aka Dayver
|
|
This post was edited by Dayver (2009-01-14 03:40, 16 years ago) |
Sergeich |
|
---|---|
По поводу педжинации в Сед и Кот вообще. Когда страниц становится много (больше 10), номера страниц начинают идти не по порядку, а урезаться (не знаю как правильно выразиться :) ). Объясню на примере:
http://www.cotonti.com/forums.php?m=topics&s=12 Номера страниц идут так 1 2 3 4 5 6 7 8 9 10 13, когда страниц больше 100 вообще невозможно юзать всё это становится. Предлагаю, для начала, дать возможность в админке выбрать - урезать пейджинацию интервалами или выводить всё (если у меня 100 страниц, то пусть от 1 до 100 и будет показываться). Вторым шагом можно предложить реализовать пейджинацию как на сайте http://allday.ru/ (по моему довольно удобно сделано). А самая крутая и удобная пейджинация, какую я только видел для большого кол-ва страниц, реализована на сайте http://dirty.ru/ - безумно простая и красивая идея :). Кстати, использовать эту штуку можно вполне легально, вот сайт автора http://karaboz.ru/2007/11/19/paginator-3000-postranichnaya-navigaciya-budushhego/ |
esclkm |
|
---|---|
По проводу сообщения Sergeicha - вот я и говорю что темплейты должны быть правильно созданы...
littledev.ru - мой маленький зарождающийся блог о котонти.
снижение стоимости программирования и снижение стоимости производства разные вещи. Первое можно скорее сравнить с раздачей работникам дешевых инструментов, чем со снижением зарплаты |
Sergeich |
|
---|---|
Это не темплейтов проблема, а именно пейджинации.
|
esclkm |
|
---|---|
если грамматно составить темплейт пажинатора (ну и настройки класса пропускать страницы или нет) - я то я думаю в него можно будет вкрутить тот скрипт - который ты показывал выше, который так же используется на миранда планете
littledev.ru - мой маленький зарождающийся блог о котонти.
снижение стоимости программирования и снижение стоимости производства разные вещи. Первое можно скорее сравнить с раздачей работникам дешевых инструментов, чем со снижением зарплаты |
|
This post was edited by esclkm (2009-01-14 16:43, 16 years ago) |
Sergeich |
|
---|---|
Да тот пейджинатор который я привел в качестве образца - это дело 10. Важно как то решить проблему вот таких сокращений :
1|2|3|4|5|6|7|8|9|10|15|20|25|30 Меня лично вот это беспокоит. Хотелось бы чтобы это выглядело хотя бы вот так: 1|2|3...15|16|17|18|19|20|21...122|123|124 |
Trustmaster |
|
---|---|
Вообще-то в sed_pagination() это решено. Идея позаимствована у vBulletin. Прежде чем возмущаться, я бы вам советовал хорошенько ее потестить, она гораздо умнее, чем может показаться.
А в списке топиков что-то другое используется - это баг, и это надо исправить. May the Source be with you!
|
Sergeich |
|
---|---|
Так никто и не возмущается, Просто в топих эта кривая пейджинация сразу в глаза бросается и я помню об этом косяке со времён лду :)
|
Trustmaster |
|
---|---|
Оформляется тикет, бага правится. Привет ЛДУ
![]() May the Source be with you!
|
Wadik |
|
---|---|
Dayver |
|
---|---|
Ну лично мне оформление безразлично а вот то что нумерация в обратном порядке(99,98,...,2,1) я бы это поддержал
Pavlo Tkachenko aka Dayver
|
|
This post was edited by Dayver (2009-01-16 03:28, 16 years ago) |
Trustmaster |
|
---|---|
Если кто не заметил, у нас поддерживаются пользовательские функции паджинации. А это значит: делайте ваши плагины, господа
![]() May the Source be with you!
|