2010-12-19 302 views
2

我不是一個非常熟練的JavaScript程序員,所以我不知道如何以正確的方式做到這一點。更改jQuery元素屬性

我有此腳本

<script type="text/javascript"> 
    jQuery(function() { 
      jQuery("#brand-select").jMyCarousel({ 
        visible: '100%' , 
      auto: true, 
      speed: 1000, 
      }); 
    }); 

</script> 

我正常工作,但我想改變財產「汽車:真正的」爲「auto:假」當鼠標懸停在UI元素「品牌選擇「

我想要做這樣的事情(僞代碼)

jQuery('#brand-select').mouseover(function() { 
    brand-select-carousel.auto = false; 
}); 

是否有人知道如何做到這一點?

+1

可以顯示jMyCarousel接受哪些參數?沒有回調支持,不可能改變現有的對象參數。 – Adam 2010-12-19 15:37:46

+1

分享jMyCarousel插件的鏈接,也許我們可以幫助你。 – 2011-12-21 06:47:06

回答

-1

如果你想獲取或設置元素的屬性,使用jquery的「ATTR」 API:http://api.jquery.com/attr/

jQuery('#brand-select').mouseover(function() { 
    jQuery(yourSelector).attr('auto', false); 
}); 
+1

我不認爲是這樣。他顯然詢問了一個插件,而** auto **屬性實際上並不是一個屬性。 – 2011-12-21 06:44:51

1

我檢查你的插件,爲「自動」屬性不暴露公共的,所以如果你想改變這個值,你需要修改這個插件。

添加一個公共方法之前「返回this.each(...)」在flie jMyCarousel.js

this.setAuto = function(value){ 
    if(typeof value != 'boolean' || value == null){ 
     return; 
    o.auto = value; 
}; 

然後,你可以在構造函數中獲得jMyCarousel的實例,然後使用它的公共方法:

var jMyCarouselInstance; 
jQuery(function() { 
     jMyCarouselInstance = jQuery("#brand-select").jMyCarousel({ 
      visible: '100%' , 
      auto: true, 
      speed: 1000, 
     }); 
}); 
... 
jMyCarouselInstance.setAuto(false);