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

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в 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
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
mishakor
http://darcyclarke.me/development/detect-attribute-changes-with-jquery/

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

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 22:34 26-08-2013
Bu

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Cheery
это deprecated

Всего записей: 79 | Зарегистр. 08-10-2001 | Отправлено: 23:05 26-08-2013 | Исправлено: Bu, 23:06 26-08-2013
Cheery



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

Цитата:
это deprecated

"это" - что? там на другом принципе работает )
универсальный способ (хоть и русорсоемкий) - регулярная проверка )
 


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

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 23:17 26-08-2013
Bu

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Cheery
здесь работает по этому принципу, а он deprecated.

Всего записей: 79 | Зарегистр. 08-10-2001 | Отправлено: 23:26 26-08-2013
mishakor

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
А чем этот способ отличается от предложенных вами?

Код:
$("ul").bind("DOMAttrModified", function(e) {
    if(e.attrName == "data-year"){
        console.log(e)
    }
});

 
и ещё вопрос, почему когда я меняю вот таким способом

Код:
$("li").attr('data-year',year);

то приведённый мною пример работает, а если во так

Код:
$("li").data('year',year);

 то не реагирует
 
 
Добавлено:
поторопился с вопросом
Bu, ваш пример более универсальный
а можно ли его привязать к конкретному элементу, а то получается он следит абсолютно за всеми атрибутами всех объектов
 
Добавлено:

Цитата:
observer.observe(document, {  
    subtree: true,  
    attributes: true  
});

пытаюсь заместо document подставить ссылку на нужный элемент, firebag выдаёт ошибку

Цитата:
TypeError: Value not an object.

Всего записей: 65 | Зарегистр. 29-09-2008 | Отправлено: 07:44 27-08-2013 | Исправлено: mishakor, 07:44 27-08-2013
Bu

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

Код:
observer.observe(document.getElementById("btn"), {  
    subtree: true,  
    attributes: true
});

http://jsfiddle.net/1337/Lcybj/22/

Всего записей: 79 | Зарегистр. 08-10-2001 | Отправлено: 21:56 27-08-2013 | Исправлено: Bu, 21:57 27-08-2013
mishakor

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Добрый день.
 
задача получить данные в формате json, обработать их. Не пойму почему не работает параметр async

Код:
 
var rubrukator = "";
$.ajax({
    url:'http://********/nabor_rub.php?callback=?',
    dataType:'json',
    async:true,
    success:function(data){
        rubrukator = data;
    }
});
alert(rubrukator)
 

Переменная rubrukator пустая, если я указываю async, то сперва мы должны получить ответ, обработать success, а затем только идти дальше, а получается что сперва выводится алерт с пустой rubrukator.
 
В чем проблема подскажите

Всего записей: 65 | Зарегистр. 29-09-2008 | Отправлено: 12:54 18-09-2013 | Исправлено: mishakor, 12:55 18-09-2013
Bu

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
mishakor
Чтобы так сделать нужно async: false но так делать нельзя т.к. браузер заблокируется на время запроса. Так что все что нужно делать с rubrukator нужно делать в success.

Всего записей: 79 | Зарегистр. 08-10-2001 | Отправлено: 13:04 18-09-2013
mishakor

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

Цитата:
async: false
нечайно скопировал, всяко пробывал

Цитата:
нужно делать в success
понял, спасибо
 

Всего записей: 65 | Зарегистр. 29-09-2008 | Отправлено: 13:06 18-09-2013
DarkSmoke



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

Код:
 
<script>
    $(document).ready(function(){  
 
        $(function() {
            if($(window).width()<=480) {
                
                $('#bank tr.row').each(function(){
                    $('td:nth-child(4)').hide();
                    $('td:nth-child(5)').hide();
                    $('td:nth-child(6)').hide();
                    $('td:nth-child(7)').hide();
                });
                
                $('.header:nth-child(4)').hide();
                $('.header:nth-child(5)').hide();
                $('.header:nth-child(6)').hide();
                $('.header:nth-child(7)').hide();
            }
            
            else if($(window).width()>480 && $(window).width()<=800) {
                
                $('#bank tr.row').each(function(){
                    $('td:nth-child(4)').show();
                    $('td:nth-child(5)').show();
                    $('td:nth-child(6)').show();
                    $('td:nth-child(7)').show();
                });
                
                $('.header:nth-child(4)').show();
                $('.header:nth-child(5)').show();
                $('.header:nth-child(6)').show();
                $('.header:nth-child(7)').show();
            }
        });  
    });  
    </script>
 

В каком положении загрузилось, в том и работает, как не крути еще раз код не срабатывает.

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

Всего записей: 962 | Зарегистр. 08-10-2005 | Отправлено: 03:09 24-02-2014
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
А при чем тут больше чего то или меньше чего то?  
Смотрим соотношение сторон (например высота к ширине)
Больше единицы - одно, меньше - другое.
 
Есть еще и window.orientation, но может не везде поддерживаться.

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

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 03:12 24-02-2014
DarkSmoke



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

Цитата:
Больше единицы - одно, меньше - другое.  

А почему больше 1?

Всего записей: 962 | Зарегистр. 08-10-2005 | Отправлено: 10:14 24-02-2014
Cheery



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

Цитата:
А почему больше 1

по математике что было?  
 
если больше единицы - числитель больше знаменателя.
если меньше - наоборот.

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

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 10:19 24-02-2014
lila73

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Помогите, пожалуйста.
 
Нужно, чтоб при нажатии кнопки, в блок #content подкружалась страничка со слайдером изображений из файла pic.html
 
Использую такой код
 
$(".scr").click(function () {
         
         $("#content").load("pic.html")  
                   
});
 
 
 
А это внутри файла pic.html
 
<div id="slideshow">
 
    <ul class="slides">
        <li><img src="images/gallery/1.png" width="800" height="450" /></li>
        <li><img src="images/gallery/2.png" width="800" height="450" /></li>
        <li><img src="images/gallery/3.png" width="800" height="450" /></li>
    </ul>
 
    <span class="arrow previous"></span>
    <span class="arrow next"></span>
</div>
 
 
<script src="js/script.js"></script>
 
 
 
Но слайдер не работает. Похоже, что не срабатывает script.js
 
При этом, если загрузить pic.html отдельно, то всё работает.
 
Собственно, вопрос в том, как подгрузить pic.html, чтоб скрипт работал?

Всего записей: 5 | Зарегистр. 24-02-2014 | Отправлено: 23:06 24-02-2014 | Исправлено: Cheery, 23:09 24-02-2014
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
lila73
javascript, подгружаемый через Ajax, работать не будет.
 
скрипт script.js нужно подключить отдельно
https://api.jquery.com/jQuery.getScript/

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

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 23:10 24-02-2014
DarkSmoke



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
чет я не понял зачем смотреть соотношение сторон?
Объясните пожалуйста.
 
И какую команду юзать?

Всего записей: 962 | Зарегистр. 08-10-2005 | Отправлено: 23:28 24-02-2014 | Исправлено: DarkSmoke, 23:57 24-02-2014
Cheery



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

Цитата:
чет я не понял зачем смотреть соотношение сторон?

ну кто спрашивал насчет ориентации экрана в мобильном устройстве??
 
при горизонтальном положении ширина больше высоты, при вертикальном - наоборот.
можно сравнивать просто высоту с шириной, можно их соотношение.
 
это, конечно, если речь о мобильных устройствах, а не вручную измененных размерах окна на десктопе.

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

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 23:32 24-02-2014
lila73

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Cheery
 
Я сделала так, но не работает всё равно, возможно нужно добавить ещё что-то?
 
$(".scr").click(function () {
         
         $("#content").load("pic.html"  , function() {
                                $.getScript( "js/script.js")
          });                    
});
 
Подскажите, если Вам не сложно

Всего записей: 5 | Зарегистр. 24-02-2014 | Отправлено: 23:38 24-02-2014 | Исправлено: lila73, 23:39 24-02-2014
Cheery



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

Цитата:
но не работает всё равно, возможно нужно добавить ещё что-то?  

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

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

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 23:58 24-02-2014
DarkSmoke



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

Всего записей: 962 | Зарегистр. 08-10-2005 | Отправлено: 00:01 25-02-2014
Открыть новую тему     Написать ответ в эту тему

Страницы: 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