防止在 jquerymobile 中应用 class
Prevent application of a class in jquerymobile
如何强制 ui-btn-active
从不在任何地方设置?监听事件看起来很臃肿,因为我真的不知道它应用在哪里。
在网上搜索我只找到了非常过时的解决方案。
部分答案..
您可以覆盖原来的 $.fn.addClass
方法并在调用原来的 addClass 之前删除 className:
var _org = $.fn.addClass;
$.fn.addClass = function(className) {
className = className.replace(/\bui-btn-active\b/g, '');
return _org.call(this, className);
}
这不会保护您免受:
el.className = 'ui-btn-active';
$(el).html('<div class="ui-btn-active"></div>');
el.classList.add('ui-btn-active');
el.innerHTML = '<div class="ui-btn-active"></div>';
您可以删除 JS on mobileinit
中的 class
$(document).on("mobileinit", function () {
$.mobile.activeBtnClass = "";
});
如何强制 ui-btn-active
从不在任何地方设置?监听事件看起来很臃肿,因为我真的不知道它应用在哪里。
在网上搜索我只找到了非常过时的解决方案。
部分答案..
您可以覆盖原来的 $.fn.addClass
方法并在调用原来的 addClass 之前删除 className:
var _org = $.fn.addClass;
$.fn.addClass = function(className) {
className = className.replace(/\bui-btn-active\b/g, '');
return _org.call(this, className);
}
这不会保护您免受:
el.className = 'ui-btn-active';
$(el).html('<div class="ui-btn-active"></div>');
el.classList.add('ui-btn-active');
el.innerHTML = '<div class="ui-btn-active"></div>';
您可以删除 JS on mobileinit
$(document).on("mobileinit", function () {
$.mobile.activeBtnClass = "";
});