Очень нужна помощь в js, есть сам небольшой код который подгружает картинки с базы данных, а именно нажимая кнопку "Открыть еще" . Если обновить страничку то скрипт выполняет его заного, хотелось бы чтобы сохранял позицию скролла... Может посмотрите код? Код (Javascript): $(function dgert() { $('.more_buttonaa').live("click",function() { var that = $(this); var getId = $(this).attr("id"); var cat = $.trim($('#cata').val()); if(getId) { $("#load_moreaa_"+getId).html('<img style="position:relative;left:45%;" src="/images/loading.gif"></img>'); $.ajax({ type: "POST", url: "/fetch_pages.php", data:{getLastContentId:getId,category:cat}, success: function(html){ $("div#load_moreaa_ctnt").append(html); $("#load_moreaa_"+getId).remove(); that.focus(); } }); } else { $(".more_tabaa").html('The End'); } that.focus(); return false; }); });
капец а не форум, два сообщения показывает что профлудил... удалил одно, удалил и другое... --- Добавлено --- буду короток.. Код (Javascript): $(function dgert() { $('.more_buttonaa').live("click",function() { замени на: Код (Javascript): $(function() { $( 'body' ).on( 'click', '.more_buttonaa', function(e) { e.preventDefault(); live - устаревшая функция клик тег какой будет? нид <a class="more_buttonaa" href="тут телепатически сидит решетка, дальше идет онКлик. Поменять нужно... избавляемся от клико в html">Открыть еще</a>
извините, не совсем понял "тут телепатически сидит решетка, дальше идет онКлик. Поменять нужно... избавляемся от клико в html"...что вы имели ввиду?
HTML: <div class="more_div"><a href="#"><div id="load_moreaa_<?php echo $idz; ?>" class="more_taba"> <div class="more_buttonaa" id="<?php echo $idz; ?>">Показать больше</div></a></div> </div>
HTML: <div class="more_div"><a id="view_plus" data-id="<?= $idz; ?>" href="/fetch_pages.php?getLastContentId=<?= $idz; ?>&category=______Где_это $.trim($('#cata').val())____?______"><div id="load_moreaa_<?= $idz; ?>" class="more_taba"> <div class="more_buttonaa" id="<?= $idz; ?>">Показать больше</div></a></div> </div> Код (Javascript): $(function() { $( 'body' ).on( 'click', '.more_buttonaa', function(e) { e.preventDefault(); var click = $( this ); var url = click.attr( 'href' ); var link = url.split( '?' ); $( '#load_moreaa_' + click.attr( 'data-id' ) ).html( '<img style="position:relative;left:45%;" src="/images/loading.gif"></img>' ); $.ajax( { type: 'POST', url: link[0], data: link[1] }).done( function( res ) { // тут дальнейшие действия res результат }); }); });
да он постом передает в файл fetch_pages.php, чтобы в нем кое какие значение выбирало по category - точнее select * from where category=''....'
+ у браузера вруби панель F12 вкладка - консоль если не ошибаюсь. Каждый раз когда кликаешь, там отображается что за чудо после сотворяются или ошибки... --- Добавлено --- как получить переменную или значение которое добавляет в тег <тег id="cata">значение</тег> ?
Код (Text): moremore.js:3 Uncaught TypeError: $(...).on is not a function(anonymous function) @ moremore.js:3(anonymous function) @ jquery-1.3.2.min.js:19each @ jquery-1.3.2.min.js:12ready @ jquery-1.3.2.min.js:19(anonymous function)
тьфую точно, подключил его, но все равно тоже самое выдает.. --- Добавлено --- Код (Text): moremore.js:9 Uncaught TypeError: Cannot read property 'split' of undefined
Нашел более простой вариант. Получается из базы подгружаются все картинки, js код выводит только 16 и если нажимать кнопку под ID loadMore, То будут открываться еще 8 штук. Как сделать чтобы сохранял позицию скролла, а то после обновлений страницы сбрасывается... Код (Javascript): $(document).ready(function () { size_li = $("#myList li").size(); x=16; $('#myList li:lt('+x+')').show(); $('#loadMore').click(function () { x= (x+8 <= size_li) ? x+8 : size_li; $('#myList li:lt('+x+')').show(); }); }); Код (Text): <ul id="myList"><? while($rows=mysql_fetch_array($result)){ ?> <li>тут выводятся картинки</li> <?}?> </ul> <div id="loadMore"><p><b>Показать еще</b></p></div>