Мы только что обновились с jquery mobile beta 2 до rc2. У нас была пользовательская кнопка, которую мы не хотим, чтобы jqm инициализировал (добавили дополнительную разметку), поэтому мы использовали это:
<button id="buttonid" data-role="none"></button>
И это сработало отлично, но теперь с обновлением фактически инициализируется кнопка. Я не вижу никаких обновлений в примечаниях к выпуску или документации. Я что-то упустил?
Разметка после обновления:
<div data-theme="c" class="ui-btn ui-btn-corner-all ui-shadow ui-btn-down-c ui-btn-up-c" aria-disabled="false">
<span class="ui-btn-inner ui-btn-corner-all" aria-hidden="true">
<span class="ui-btn-text"></span>
</span>
<button id="buttonid" data-role="none" class="ui-btn-hidden" aria-disabled="false"></button>
</div>
UPDATE
Как отметил Фил, мою проблему трудно воспроизвести. Может быть что-то с моим кодом, но кажется странным, что простая меняющаяся версия создает поведение для меня. Вот дополнительная разметка, которую я впервые вычеркнул из примера:
<ul class="item" data-role="listview" data-inset="true">
<li data-role="list-divider">Something</li>
<li>
<a href="#detailPage?id=123"></a>
<div class="block_container" data-role="none">
<div class="block block_small">
<button data-role="none" id="check-123" class="check" data-id="something"></button>
</div>
<div class="block block_small assignment">
<button data-role="none" id="assign-123" class="assignmentoverlay"></button>
</div>
<div class="block">
<h3>
Something
</h3>
<p>
lorem..
</p>
</div>
</div>
</li>
ОБНОВЛЕНИЕ 2
Я нашел в чем проблема. Я заполняю свой список из JavaScript. В конце я звоню trigger("create")
. Это улучшит все элементы в моем списке, даже те, которые имеют data-role="none
.
jsfiddle для воспроизведения проблемы - http://jsfiddle.net/V2xAX/9/
Обновление заголовка вопроса
ОБНОВЛЕНИЕ 3
Надеюсь, последнее обновление. Мы заставили его работать следующим образом:
При вызове trigger("create")
в моем списке каждый элемент будет улучшен. Мы этого не хотим.
При вызове trigger("create")
для элемента страницы, содержащего мобильную страницу jquery, будут улучшены только элементы без data-role="none"
. Это поведение, которое мы хотим.
Ссылка для тестирования - http://jsfiddle.net/V2xAX/16/
Было бы интересно узнать, почему это происходит:)