2014-01-26 80 views
0

所以我試圖創建條形碼短代碼。我想能夠從裏面的文本中獲得寬度,但我似乎無法得到它,它來自未定義。我不是jquery的專家,所以原諒我。wordpress中的條形碼短代碼

例如:

jQuery(document).ready(function() { 
    jQuery(document).scroll(function() { 
     var top = jQuery(document).scrollTop(); 
     if (top > 10) 
     { 
      jQuery(".bar").animate({ width: '20%' }, 2000) 
     } 
    }); 
}); 

好了,在一個預先設定的寬度動畫細。然後我嘗試將'20%'改爲一個變量,該變量調用一個理論上應該獲得li元素內部文本的函數。

例如:

function name() { 
      jQuery('.bar').text()}; 
var barLength = name(); 

嗯,我怎麼會得到li元素裏面的價值?也許有一個更簡單的方法?另外,因爲每個酒吧的長度應該是不同的,我會使用'每個'循環嗎?就像每個.bar一樣,獲取值並設置寬度,那樣會好嗎?

回答

0
jQuery(document).ready(function() { 
    jQuery(document).scroll(function() { 
     function isScrolledIntoView(elem) { 
      var docViewTop = jQuery(window).scrollTop(); 
      var docViewBottom = docViewTop + jQuery(window).height(); 

      var elemTop = jQuery(elem).offset().top; 
      var elemBottom = elemTop + jQuery(elem).height(); 

      return ((elemBottom <= docViewBottom) && (elemTop >= docViewTop)); 
     } 


     jQuery(window).scroll(function() { 
      if (isScrolledIntoView(jQuery('.bargraph'))) { 
       jQuery(".bar10").css({ "width": "10%" }) 
       jQuery(".bar20").css({ "width": "20%" }) 
       jQuery(".bar30").css({ "width": "30%" }) 
       jQuery(".bar40").css({ "width": "40%" }) 
       jQuery(".bar50").css({ "width": "50%" }) 
       jQuery(".bar60").css({ "width": "60%" }) 
       jQuery(".bar70").css({ "width": "70%" }) 
       jQuery(".bar80").css({ "width": "80%" }) 
       jQuery(".bar90").css({ "width": "90%" }) 
       jQuery(".bar100").css({ "width": "100%" }) 
      } 

     }); 
    }); 
});