роль данных = «нет» не соблюдается при вызове триггера («создать») в мобильной версии jQuery rc2

#jquery-mobile

#jquery-mobile

Вопрос:

Мы только что обновились с 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>
  

Обновить
Как указал Филл, мою проблему трудно воспроизвести. Может быть что-то с моим кодом, но кажется странным, что простое изменение версии создает поведение для меня. Вот дополнительная разметка, которую я сначала удалил из примера:

 <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 /

Было бы интересно узнать, почему это происходит 🙂

Комментарии:

1. что произойдет, если вы используете ввод? <тип ввода = «кнопка» значение = «Тип ввода = кнопка» роль данных = «нет»>

2. Боюсь, тот же эффект. И атрибут значения отображается в виде текстовой метки внутри пользовательского интерфейса-btn-text

3. Хм, я не могу воспроизвести то, что вы видите, я получаю вид собственного элемента: jsfiddle.net/V2xAX/4

4. Да, вы правы. Я тоже не могу понять поведение… На самом деле у меня есть дополнительная разметка вокруг моей кнопки. Добавил его в скрипку — jsfiddle.net/V2xAX/5

5. объявляете ли вы какие-либо глобальные параметры конфигурации? jquerymobile.com/demos/1.0rc2/docs/api/globalconfig.html