次のように定義されたカスタム選択メニュー(複数)があります。
<select name="DanceStyles" id="DanceStyles" multiple="multiple" data-native-menu="false">
ヘッダーのボタンアイコンを右に移動して[閉じる]テキストを表示することを除いて、すべて正常に機能します。(一部のモバイルユーザーは、Xアイコンの目的を理解できないか、クリックするのに問題があることがわかったので、右側に「閉じる」という単語を入れて大きくしすぎて見逃せないようにします。)そのオプションは選択バー自体に適用されるため、選択でそれを行うための任意のオプションになります。
私はcreateイベントをインターセプトして、そこでボタンアンカーを見つけ、そのためのcreateハンドラーを追加して、次のようにしました(コメントアウトでわかるように、いくつかのバリエーションを試しました)。
$('#search').live('pagecreate', function (event) {
$("#DanceStyles").selectmenu({
create: function (event, ui) {
$('ul#DanceStyles-menu').prev().find('a.ui-btn').button({
create: function (event, ui) {
var $btn = $(this);
$btn.attr('class', $btn.attr('class').replace('ui-btn-left', 'ui-btn-right'));
$btn.attr('class', $btn.attr('class').replace('ui-btn-icon-notext', 'ui-btn-icon-left'));
// $(this).button({ iconpos: 'right' });
// $btn.attr('class', $btn.attr('class').replace('ui-btn-icon-notext', 'ui-btn-icon-left'));
// // $btn.attr('data-iconpos', 'left');
$(this).button('refresh');
}
});
}
});
});
そこで、ボタンオプションをリセットしてrefreshを呼び出し(機能しませんでした)、CSSを変更してみました。どちらも機能せず、閉じるアイコンに改行があるという奇妙なフォーマットの問題が発生しました。
誰かがこれを行う正しい方法を知っていますか?