Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Интернет » Web-программирование » Вопросы по jQuery

Модерирует : Cheery

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24

Открыть новую тему     Написать ответ в эту тему

Jokerjar79



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Фильтр по слову "jquery" не дал какой-либо общей темы по этой библиотеке, поэтому решился создать. У меня возник такой вопрос: согласно справочной документации такой код:
 

Код:
  <p>1</p>
  <p>2</p>
  <p>3</p>
  <p>4</p>
 
  <script language="javascript">
      $("p")[0].html("test");
  </script>

 
должен <p>1</p> заменить на <p>test</p>. Но не работает. Пробовал еще так:
 

Код:
$("p").get(0).html("test");

 
Есть подозрения, что мануал, по которому осваиваю библиотеку, написан для более старой версии, а позже принцип обращения к конкретному элементу из коллекции как-то изменился. Кто знает, как реализовать это (версия библиотеки - v1.3.2)



Документация по jQuery - eng, рус

Всего записей: 710 | Зарегистр. 08-09-2007 | Отправлено: 16:22 11-08-2009 | Исправлено: Cheery, 07:35 09-08-2013
israel_rider

Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору

Цитата:
а что тебя собственно смущает?  

То и смущает, что не могу. Пишу -  
success: function (indRes) {  
                if (indRes == 'success') {  
                    $('#dacontent').load('d2.php');  
                   asd(): // Так я пробую вызвать новую функцию, внутри   которой я хочу  
                            //запустить новый Аякс.
                } else {$('#dacontent').empty().append( indRes )}  
            }  
Получаю ошибку. Что то я неправильно делаю в синтаксисе.

Всего записей: 925 | Зарегистр. 28-07-2007 | Отправлено: 16:26 27-05-2010
pavluha



Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
судя по коду который ты привел, то после вызова функции у тебя вместо точки с запятой стоит двоеточие.

Всего записей: 366 | Зарегистр. 01-04-2003 | Отправлено: 17:29 27-05-2010
israel_rider

Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Огромное спасибо. Невероятно, но факт - всё работает.

Всего записей: 925 | Зарегистр. 28-07-2007 | Отправлено: 12:37 28-05-2010
kosorikov1

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Имеется простенький код на jquery
$(document).ready(function(){
 
     $("div.tab").hide();          
        $(".menu a:not(a[href*='.php'])").click(function(){
            //if(!$(".menu a[href*='.php']")) {
        var thisID = $(this).attr('id');
 
 
        $("div.tab").not('#submenu_' + thisID).hide();
        $(".menu a").not(".menu a#" + thisID).removeClass("activ");
            $('#submenu_' + thisID).slideToggle("fast");
          $('.menu a#' + thisID).toggleClass("activ");
 
      return false;
        
        });
        
    });
 
Теперь мне надо после  $('#submenu_' + thisID).slideToggle("fast"); запустить ф-ю fleXenv.updateScrollBars(); Кка это сделать?

Всего записей: 102 | Зарегистр. 19-11-2009 | Отправлено: 13:50 01-06-2010
pavluha



Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
А что собственно вам мешает это сделать?  
И что это вообще за функция fleXenv.updateScrollBars(); - зачем она нужна - что вы пытаетесь сделать? Или догадаться самим?

Всего записей: 366 | Зарегистр. 01-04-2003 | Отправлено: 14:32 01-06-2010
kosorikov1

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Есть скрипт, который заменяет стандартные прокрутки у дива (http://www.hesido.com/web.php?page=customscrollbar)пользовательскими. Но этот скрипт не работает, если див предварительно скрыт (display:none) и вот автор посоветовал мне запускать эту ф-ю, когда блок открыт.
Если ее просто тупо написать после $('#submenu_' + thisID).slideToggle("fast");  то нифига не срабатывает ((( вот простенький код с этой штукой:
 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251"/>
<title>Simple Slide Panel</title>
 
<link href="http://www.hesido.com/web/flexcrollstyles.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="http://anton.shevchuk.name/wp-demo/jquery-tutorials/jquery.js"></script>
<script type='text/javascript' src="http://www.hesido.com/web/flexcroll.js"></script>
<script type="text/javascript">
$(document).ready(function(){
 
    $(".btn-slide").click(function(){
        $("#panel").slideToggle("slow");
        fleXenv.updateScrollBars();
         return false;
    });
    
      
});
</script>
 
<style type="text/css">
 
#panel {
    background: #754c24;
    height: 100px;
    color:#fff;
    display: none;
}
#mycustomscroll{
width: 450px;
    height: 80px;
    overflow: auto;
}
</style>
</head>
 
<body>
 
<div id="panel">
<div id='mycustomscroll' class='flexcroll'>
<ul>
<li>1</li>
<li>2</li>
<li>3</li>
<li>4</li>
<li>5</li>
<li>6</li>
<li>7</li>
<li>8</li>
<li>9</li>
<li>10</li>
</ul>
</div>
</div>
 
<a href="#" class="btn-slide">Slide Panel</a>
 
</body>
</html>

Всего записей: 102 | Зарегистр. 19-11-2009 | Отправлено: 14:50 01-06-2010
pavluha



Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Вот костыль на вскидку который поможет

Код:
 
window.onfleXcrollRun=function(){  
    $("#panel").hide();
}
 

Этот код запускает любую операцию, после инициализации Xcroll.
У дива display: block; - Или вообще его убираеш. Тобиш получается что сначала див виден и обрабатывается коректно - но после того как обработался Xcroll - он его хайдит.

Всего записей: 366 | Зарегистр. 01-04-2003 | Отправлено: 16:47 01-06-2010 | Исправлено: pavluha, 17:42 01-06-2010
kosorikov1

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
нееееееее, прежде чем сработает hide();  у меня в окне браузера покажется мешанина из окон которые должны показываться при клике. Некрасиво (((

Всего записей: 102 | Зарегистр. 19-11-2009 | Отправлено: 18:56 01-06-2010
pavluha



Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
тогда ковыряй сам плагин Xcroll - ибо команды fleXenv.updateScrollBars(); как то не особо хотят работать.

Всего записей: 366 | Зарегистр. 01-04-2003 | Отправлено: 21:00 01-06-2010
Dee_Ecks



Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Подскажите вот что:
Как с помощью jqurey сбросить произвольный элемент DOM до его исходного состояния?
 
Положим, есть SPAN в котором при вызове определенной функции меняется текст. Меняется не раз. И в определенный момент нужно вернуть текст который был в span'e.
 
Сохранить старый текст в переменную, а потом вернуть - не вариант, нужно именно вернуть исходное состояние.

Всего записей: 18 | Зарегистр. 23-07-2007 | Отправлено: 21:31 06-09-2010
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Сохранить старый текст в переменную, а потом вернуть - не вариант, нужно именно вернуть исходное состояние

а другого нет.. когда вы меняете DOM - меняете единственную его копию.

----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 23:17 06-09-2010
DarkSmoke



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Добрый день.
Подскажите, пожалуйста, хочу сделать удобное редактирование меню. Выглядит это так:
 
Главная - редактировать - удалить
Контакты - редактировать - удалить
 
Жму на кнопку редактировать, на против главной, и вместо текста ГЛАВНАЯ, появляется инпут с текстом ГЛАВАНЯ, а рядом кнопка сохранить.
 
Как такое делается?


----------
Абонентское обслуживание и ремонт компьютеров в Днепропетровске

Всего записей: 962 | Зарегистр. 08-10-2005 | Отправлено: 15:24 21-10-2010
DarkSmoke



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Инпут для загрузки файла становится не активным, но галочка на чекбоксе не ставится, почему?

Код:
 
$('#noLogo').toggle(function(){
                $('#file').attr("disabled","disabled");
            }, function(){
                $('#file').attr("disabled","");
            })
 
......
 
<input type="file" name="uploadfile" id="file" />
<label><input type="checkbox" name="noLogo" value="1" id="noLogo" /> Не загружать логотип</label>
 

Всего записей: 962 | Зарегистр. 08-10-2005 | Отправлено: 10:43 22-11-2010 | Исправлено: DarkSmoke, 04:36 24-11-2010
DarkSmoke



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Форум умер.... .  

Всего записей: 962 | Зарегистр. 08-10-2005 | Отправлено: 04:35 24-11-2010
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
DarkSmoke
здесь не чат.. запомните это

Цитата:
Как такое делается?  

как работать с innerHTML или создавать элементы через createElement не знаете?
создали div, заснули следом или перед текстом, текст спрятали..  

Цитата:
Инпут для загрузки файла становится не активным, но галочка на чекбоксе не ставится,


Код:
$(document).ready(function(){
$('#noLogo').change(function(){
        if ($(this).is(':checked')) {
          $('#file').attr("disabled","disabled");  
        } else {
          $('#file').attr("disabled","");
        }
})});


----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 05:51 24-11-2010 | Исправлено: Cheery, 05:51 24-11-2010
DarkSmoke



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Как пробежаться по всем input type="text" и к тем которые пустые применить бордюр 1рх?
 
Как пробежаться я нашел $(':text').each(function(){}); а вот как с ними что то делать не чего не получается

Всего записей: 962 | Зарегистр. 08-10-2005 | Отправлено: 02:07 28-11-2010
DarkSmoke



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Зацикливается код. Т.е. Если к примеру я жму кнопку удалить, то один раз все удаляется, на второй уже не удаляется. Если я код еще раз продублирую, то будет удаляться 2 раза. Три раза продублирую, три раза будет удалятся.
Я ж понимаю что как то можно без дублирования кода сделать, а как?
код

Всего записей: 962 | Зарегистр. 08-10-2005 | Отправлено: 13:10 29-11-2010
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
DarkSmoke

Цитата:
Как пробежаться я нашел $(':text').each(function(){}); а вот как с ними что то делать не чего не получается

$(':text').each(function(){
обращаетесь к каждому через  
$(this) и делаете то, что вам хочется
})
 
 
 
Добавлено:

Цитата:
Зацикливается код.

ну и зачем нам php часть его?
 

Цитата:
                    $("#contentLeft").html(citiesDelete);  
/* Дублирование кода */                          
                      
                    $("#contentLeft ul").sortable({  

задержку вставить пробовали?
после вставки html кода и "привязки" к нему обработки может понадобиться задержка в зависимости от браузера.

----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 21:45 29-11-2010
DarkSmoke



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору

Цитата:
задержку вставить пробовали?
после вставки html кода и "привязки" к нему обработки может понадобиться задержка в зависимости от браузера.

Не.. код дублирую я. Сам. Иначе не будет работать. Сколько раз продублирую, столько раз и можно удалить без перезагрузки страницы.
К примеру, если не продублировать этот код, то перетаскивать города нельзя, после того как я добавляю новый город. Продублировал - можно.

Код:
 
 /* Перетаскивание меню */
           $(function() {
                $("#contentLeft ul").sortable({  
                    opacity        : 0.6,  
                    cursor        : 'move',  
                    placeholder    : "ui-state-highlight",  
                    pacity        : 0.6,
                    update        : function() {
                        var order = $(this).sortable("serialize") + '&action=updateRecordsListings';
                        $.post("action/citiesListing.php", order, function(theResponse){
                        $("#contentRight").html(theResponse);
                        });
                    }
                });
            });  
 
 
     /* Сохраняем новый город */
            $('#citiesCreate').click(function(){
                $.post("action/citiesCreate.php",{citiesCreate: $('#addCity').val()}, function(citiesCreate){
                    $("#contentLeft").html(citiesCreate);
                    $('#addCity').attr({value: ''});
/* Дублирование кода */                    
                    $("#contentLeft ul").sortable({  
                        opacity        : 0.6,  
                        cursor        : 'move',  
                        placeholder    : "ui-state-highlight",  
                        pacity        : 0.6,
                        update        : function() {
                            var order = $(this).sortable("serialize") + '&action=updateRecordsListings';
                            $.post("action/citiesListing.php", order, function(theResponse){
                            $("#contentRight").html(theResponse);
                            });
                        }
                    });
/* Конец дублирования кода */  
 

Всего записей: 962 | Зарегистр. 08-10-2005 | Отправлено: 23:52 29-11-2010 | Исправлено: DarkSmoke, 23:58 29-11-2010
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
DarkSmoke

Цитата:
К примеру, если не продублировать этот код, то перетаскивать города нельзя, после того как я добавляю новый город

конечно нельзя - вы же переписываете ноды новыми..  
есть у вас div..  в нем что то есть, к чему привязали обработку..
если сделаете  
div.innerHTML=чему то, то вы уничтожили старые ноды и их обработку.
конечно же надо заново запускать инициализацию и привязку обработки.

----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 23:59 29-11-2010
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24

Компьютерный форум Ru.Board » Интернет » Web-программирование » Вопросы по jQuery


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru