2011-10-12 54 views
1

我試圖將兩個Jquery移動插件網格化在一起。兩者都使用相同的核心功能,但增加了一個選項,使其他插件無法正常工作。jquery mobile - 如何更改函數調用中的選項?

該函數的調用這樣的:

$.mobile.changePage(
      url, 
      { 
      type: type && type.length && type.toLowerCase() || "get", 
      data: $this.serialize(), 
      transition: $this.jqmData("transition"), 
      direction: $this.jqmData("direction"), 
      reloadPage: true, 
      pageContainer:$currPanel 
      } 
    ); 

與pageContainer僅正在使用的一個功能。

我的問題: 是有辦法的選項中分化或我必須做這樣的事情:

if (called by plugin one) { 
    function with option 
    } else if (called by plugin two){ 
     function without option 
     } 

必須有更好的方法來做到這一點?

感謝您的一些意見!

回答

0

尺寸您您的垂詢和測試之外對象,以確定您所需要的附加參數:

var myOptions = { 
    type: type && type.length && type.toLowerCase() || "get", 
    data: $this.serialize(), 
    transition: $this.jqmData("transition"), 
    direction: $this.jqmData("direction"), 
    reloadPage: true, 
}; 

if (caller == someVariable) { 
    myOptions.pageContainer = $currPanel; 
} 

$.mobile.changePage(url, myOptions); 
+0

抱歉這麼晚纔回復。現在試試這個... – frequent

相關問題