2014-01-17 21 views
2

我想將我的Jquery手機CSS和JS應用到一些有限的元素和頁面上的其他元素。任何想法我怎麼能做到這一點。Jquery CSS和JS到有限元素

我有一些Salesforce標準客戶門戶網站,其中包括一個具有Jquery,mobile和CSS的選項卡。

現在,當我打開客戶門戶中的選項卡時,它將覆蓋Salesforce標準樣式。

謝謝

+0

哪些因素?哪一頁??什麼CSS?什麼JS? –

+0

jQM版本,更多詳細信息.. – Omar

+0

只需$(selector).action()將適用於此。 –

回答

6

取決於你使用的jQuery Mobile版本。

  1. 解決方案1:

    • 修改全局設置mobileinit,通過設置ignoreContentEnabled真正。但是,這會影響應用程序性能,因爲它會減慢處理/初始化窗口小部件/元素。

      <head> 
          <script src="jQuery.js"></script> 
          <script> 
          $(document).on("mobileinit", function() { 
           $.mobile.ignoreContentEnabled = true; 
          }); 
          </script> 
          <script src="jQuery-Mobile.js"></script> 
      <head> 
      
    • 添加data-enhance="false"到元素或DIV要通過JQM保持不變。

      <div data-role="content" data-enhance="false"> 
          <!-- elements --> 
      </div> 
      
      <input type="text" data-enhance="false"> 
      

  • 解決方案2:

    • 修改mobileinit插件默認設置,通過設置.s對於keepNative,選民。選擇器可以是<tag>#id.class

      • jQuery Mobile的< = 1.3.x的

        <head> 
            <script src="jQuery.js"></script> 
            <script> 
            $(document).on("mobileinit", function() { 
             $.mobile.page.prototype.options.keepNative = $.mobile.page.prototype.options.keepNative + ", input, #foo, .native"; 
            }); 
            </script> 
            <script src="jQuery-Mobile.js"></script> 
        <head> 
        
      • jQuery的移動> = 1.4.x的

        <head> 
            <script src="jQuery.js"></script> 
            <script> 
            $(document).on("mobileinit", function() { 
             $.mobile.keepNative = $.mobile.keepNative + ", input, #foo, .native"; 
            }); 
            </script> 
            <script src="jQuery-Mobile.js"></script> 
        <head> 
        

      當正在創建的頁面,input,元件與#foo ID和元素與native類,將保持原樣。


  • Demo

    +1

    在這裏你已經提到我可以指定在哪裏使用本地樣式。它可以通過其他方式完成,比如應用Jquery樣式的位置。謝謝 –

    +1

    @KaushikRay它不能這樣做,因爲默認元素是增強的,除非你不告訴jQM。您可以將第一個解決方案用於完整的div,解決方案二用於特定的元素,您也可以將兩個解決方案結合使用 – Omar