Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Перелистывание целого блока (https://javascript.ru/forum/dom-window/71090-perelistyvanie-celogo-bloka.html)

Puzzle 25.10.2017 16:16

Заменить кнопку Показать ещё, на скроллинг
 
Привет. Ребята, я с js не дружу, поэтому прошу помощи у вас. Сейчас новости перелистываеются кнопкой показать ещё.
Помогите убрать кнопку Показать ещё, и сделать чтобы автоматом при скроллинге листалось дальше.

Ниже код страницы
<?php
include 'db.php';
include 'head.php'; 
?>

<div id="content" class="center">
<div class="fullbox">


<?php 
if(isset($_GET['ok_del'])){
echo '<div class="adminfo" role="alert">Пользователь и все его картинки успешно удалены!</div>';	
}
$req = mysql_query("SELECT * FROM `settings` WHERE `id` = 1");
$set = mysql_fetch_array($req);
$pg=page::pg_num($set['file_index'], 'files WHERE posting = 0'); // Считаем файлы в базе для пагинации
$req = mysql_query("SELECT * FROM `files` WHERE `posting` = 0 ORDER BY `id` DESC LIMIT ".$pg['start'].", ".$pg['num']."");
if(mysql_num_rows($req) == 0){
echo '<div class="adminfo" role="alert">Картинок нет.</div>';
}	
while($file = mysql_fetch_array($req)){
if($file['date_day'] == date('dmy', time())){
$new = '<div class="newshot"> Новый</div>';
}else{
$new = null;
}
?>




<div class="thumb">
<a class="th-link" href="/test/<?=$file['id']?>">
<div class="th-img img-box">
<img src="/img/<?=$file['file']?>" alt="image" class="img-responsive"><?=$new?>
<div class="th-meta flex-row icon-left">
<span class="model"><i class="fa_main fa-camera"></i><?=$file['name']?></span>
<span class="date"><i class="fa_main fa-calendar"></i><?=date('d ' . $months[date( 'n' )] . ' Y (H:i)',$file['date'])?></span>
<div class="clearfix"></div>
</div>
</div>
</a>
</div>

<?php } ?>

</div>

<input type="ajaxbtn" class="ajaxbtn" value="Показать еще" id="show_more" count_show="<?=mysql_num_rows($req);?>"/>

</div>

</body>
</html>

<script>
	$(document).ready(function(){
		$('#show_more').click(function(){
		var btn_more = $(this);
		var count_show = parseInt($(this).attr('count_show'));
		var count_add = 8;
		btn_more.val('Подождите...');
				 
			$.ajax({
				url: "index-add.php",
				type: "post",
				dataType: "json",
				data: {
					"count_show": count_show, 
					"count_add": count_add
				},
				success: function(data){
					if(data.result == "success"){
						$('#content').append(data.html);
							btn_more.val('Показать еще');
							btn_more.attr('count_show', (count_show + count_add));
					}else{
						btn_more.val('Больше нету картинок');
					}
				}
			});
		});
	});
</script>

Puzzle 26.10.2017 09:04

За помощь подкину монетку на киви.

ruslan_mart 26.10.2017 10:08

$(window).scroll(function() {
	var scrollTop = Math.max(document.documentElement.scrollTop, document.body.scrollTop),
		scrollHeight = Math.max(document.documentElement.scrollHeight, document.body.scrollHeight);

	if(scrollTop === scrollHeight - this.innerHeight) {
		$('#show_more').click();
	}
});

Puzzle 26.10.2017 13:41

Цитата:

Сообщение от ruslan_mart (Сообщение 468242)
$(window).scroll(function() {
	var scrollTop = Math.max(document.documentElement.scrollTop, document.body.scrollTop),
		scrollHeight = Math.max(document.documentElement.scrollHeight, document.body.scrollHeight);

	if(scrollTop === scrollHeight - this.innerHeight) {
		$('#show_more').click();
	}
});

Куда это вставлять?В самый низ вставил.Кнопка Показать как была как работала так всё и осталось.Ничего не изменилось вроде

laimas 26.10.2017 14:04

Цитата:

Сообщение от Puzzle
mysql_fetch_array($req)

mysql_fetch_assoc($req) - зачем получать из ресурса данные, которые не нужны.

Цитата:

Сообщение от Puzzle
date('d ' . $months[date( 'n' )] . ' Y (H:i)',$file['date'])

до запросов:

mysql_query('SET lc_time_names="ru_RU"');

далее в запросах:

mysql_query("SELECT *, LOWER(DATE_FORMAT(`date`, "%e %M %Y H:i")) `date` FROM ...

Puzzle 26.10.2017 15:40

Цитата:

Сообщение от laimas (Сообщение 468275)
mysql_fetch_assoc($req) - зачем получать из ресурса данные, которые не нужны.



до запросов:

mysql_query('SET lc_time_names="ru_RU"');

далее в запросах:

mysql_query("SELECT *, LOWER(DATE_FORMAT(`date`, "%e %M %Y H:i")) `date` FROM ...

Это всё работе не мешает,сделано как смогли, чтож теперь, не все асы...да и я тут спрашиваю как мне сделать скроллинг вместо кнопки

laimas 26.10.2017 15:55

Цитата:

Сообщение от Puzzle
Это всё работе не мешает

Ни кто и не говорил, что мешает. Но как минимум надо знать, что функция mysql_fetch_array возвращает два набора идентичных данных, один из которых ассоциативный, другой индексный. Спрашивается зачем зря кушать ресурсы получая лишние данные?

То что вам написали должно быть размещено в

$(document).ready(function() {

Что это и для чего я не вникал, я просто "пробежался" по вашему коду и заметил лишнее.


Часовой пояс GMT +3, время: 20:48.