Плагины изотопов и Instagram Jquery - динамическое обновление ввода текста val () внутри функции щелчка jQuery - PullRequest
0 голосов
/ 26 марта 2012

Я работаю над кодом, который использует плагин запросов Instagram для загрузки фотографий на страницу и Jquery Изотоп для создания макета. У меня это работает, за исключением того, что я хочу иметь возможность ввести имя хеша в текстовом вводе, который будет загружать те изображения, отмеченные этим именем хеша. У меня есть кнопка, которая загружает изображения. Он отлично работает при первом вводе текста, но я не могу обновить хэш в функции нажатия кнопки при изменении ввода текста. Мне интересно, если мне нужно использовать делегат для этого? Любая помощь будет оценена Я начинающий программист jquery, поэтому я понимаю, что мой код нуждается в доработке.

$(function(){

var selectedHash = $( "input:text[name=hash]" ).val();    
var insta_container = $(".instagram"), insta_next_url;

 insta_container.instagram({
    hash: selectedHash,
    clientId : '4cc3fc9df774483cb575b405f3c1cc21',
    show : 10,
    locationId: '',
    onComplete : function (photos, data) {
  var insta_next_url = data.pagination.next_url;
  $(function(){ 
  $('div.instagram').imagesLoaded( function(){
    $(this).isotope({
      itemSelector : '.item',
      masonry: {
     columnWidth: 170
   }
    });
   });
      });      
    }
  });

$('button.add').bind('click', function(){
  var button = $(this); 
  var selectedHash = $( "input:text[name=hash]" ).val();    
   insta_container.instagram({
       next_url : insta_next_url,
       hash: selectedHash,
       clientId : '4cc3fc9df774483cb575b405f3c1cc21',
        show : 10,
        onComplete : function(photos, data) {
      insta_next_url = data.pagination.next_url;

        var $newItems = $(insta_next_url);
    $('div.instagram').prepend($newItems).isotope( 'reloadItems' ).isotope({ sortBy: 'original-order' });
    }
  });  
 });



});

1 Ответ

0 голосов
/ 26 марта 2012

Ну, вот одна проблема.

var selectedHash = $( "input:text[name=hash]" ).val();

... должно быть ...

var selectedHash = $( "input[name='hash']" ).val();
...