2013-11-21 26 views
1

這裏是我的HTML:數據iconpos =「左」變成數據iconpos =「右」當頁面呈現

<body> 

    <ul data-role="listview" data-inset="true" data-iconpos="left" data-theme="content-list-main"> 
     <li data-icon="viewpolicy" data-iconpos="left"><a href="pages/myPolicy/myPolicy.html">View My Policy</a></li> 
     <li><a class="ui-icon-viewidcards" href="pages/autoVehicles/autoVehicles.html">View Auto ID Cards</a></li> 
     <li><a class="ui-icon-paybill" href="pages/payMyBill/payMyBill.html">Pay My Bill</a></li> 
     <li><a class="ui-icon-roadside" href="pages/roadside/roadside.html">Roadside/Accident Assistance</a></li> 
     <li><a class="ui-icon-claimscenter" href="pages/claimCenter/claimCenter.html">Claim Center</a></li> 
    </ul> 

</body> 

這裏是什麼元素看起來,當我使用Chrome檢查它像:

<ul data-role="listview" data-inset="true" data-iconpos="left" 
data-theme="content-list-main" 
    class="ui-listview ui-listview-inset ui-corner-all ui-shadow"> 
     <li data-icon="viewpolicy" data-iconpos="right" data-corners="false" 
     data-shadow="false" data-iconshadow="true" data-wrapperels="div" 
     data-theme="content-list-main" 
     class="ui-btn ui-btn-icon-right ui-li-has-arrow ui-li ui-first-child ui-last-child ui-btn-up-content-list-main"> 
      <div class="ui-btn-inner ui-li"> 
      <div class="ui-btn-text"> 
       <a href="pages/myPolicy/myPolicy.html" class="ui-link-inherit">View My Policy</a> 
      </div> 
      <span class="ui-icon ui-icon-viewpolicy ui-icon-shadow">&nbsp;</span> 
      </div> 
     </li> 
    </ul> 

注意li的屬性由於某種原因呈現爲data-iconpos =「right」。

這裏是正在加載的JS文件:

<script src="js/jquery-1.10.2.js"></script> 
<script src="js/jquery.mobile-1.3.2.js"></script> 

任何想法,爲什麼數據iconpos =「左」根本不會堅持?

謝謝

+0

可能是因爲在列表視圖的情況下,默認情況下它是正確的,表明它已關閉並可以打開?只是在黑暗中拍攝,我不使用jQM。 –

回答

1

我發現問題的根源。

在jquery.mobile-1.3.2.js,線6322,你會發現下面的代碼塊:

if (create || !item.hasClass("ui-li")) { 
      itemTheme = item.jqmData("theme") || o.theme; 
      a = this._getChildrenByTagName(item[ 0 ], "a", "A"); 
      var isDivider = (item.jqmData("role") === "list-divider"); 

      if (a.length && !isDivider) { 
       icon = item.jqmData("icon"); 

       item.buttonMarkup({ 
        wrapperEls: "div", 
        shadow: false, 
        corners: false, 
        iconpos: "right", 
        icon: a.length > 1 || icon === false ? false : icon || listicon || o.icon, 
        theme: itemTheme 
       }); 

你可以看到右側有上線6334的iconpos被硬編碼爲「右」。我不知道他們爲什麼這樣做。我可以理解一個默認值,但我沒有理由使用硬編碼值。利用一個簡單的變量來試圖爲li提供iconpos提供了一個合適的解決方案。

​​3210

我已經測試過這可能的iconpos值和完全缺乏屬性,它迄今在所有情況下的行爲正確。

請讓我知道,如果有人知道爲什麼這個值需要被硬編碼爲「正確」......但我非常有信心這種改變對於實際使data-iconpos正常運行是必要的。