首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在JQueryMobile中动态更改按钮数据主题

在JQueryMobile中动态更改按钮数据主题
EN

Stack Overflow用户
提问于 2013-03-29 16:10:29
回答 2查看 6.5K关注 0票数 3

我在动态改变按钮的主题时遇到了一点小麻烦。从另一篇文章中,我学会了如何使用:

代码语言:javascript
运行
复制
<input type="button" data-inline="true" data-mini="true" data-theme="c" id="my-button" value="Save">
<script>
$("#my-button").buttonMarkup({ theme: 'a' }).button('refresh');
</script>

从技术上讲,这是可行的,直到我将鼠标悬停在上面-然后按钮返回到数据主题"c“。有没有更好的方法来动态改变主题?

EN

回答 2

Stack Overflow用户

发布于 2013-03-29 16:47:46

如果您使用如下按钮

代码语言:javascript
运行
复制
 <a href="#" id="my-button2" data-role="button" data-theme="e">Save2</a>

您可以更改主题,如下所示

代码语言:javascript
运行
复制
$('#my-button2').attr("data-theme", "c").removeClass("ui-btn-up-e").addClass("ui-btn-up-c");

在这里查看实时小提琴http://jsfiddle.net/mayooresan/jfDLU/

票数 1
EN

Stack Overflow用户

发布于 2013-09-03 00:15:02

我试图找到这个问题的答案,但在研究了DOM结构之后提出了这个解决方案。我创建了下面的函数,用于在单击按钮时切换主题。仅当更改您所单击的同一按钮的主题时,才需要处理hover类。这些似乎适用于输入类型的按钮元素。(jqm版本1.3.2)

代码语言:javascript
运行
复制
function changeButtonTheme(buttonSelector,toTheme){
    var currentTheme  = $(buttonSelector).attr('data-theme');
    var parent  = $(buttonSelector).parent();
    $(buttonSelector).attr("data-theme", toTheme).removeClass("ui-btn-up-"+currentTheme).addClass("ui-btn-up-"+toTheme);
    parent.attr("data-theme", toTheme).removeClass("ui-btn-up-"+currentTheme).addClass("ui-btn-up-"+toTheme);
    //parent.removeClass("ui-btn-hover-"+currentTheme).addClass("ui-btn-hover-"+toTheme);
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15699632

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档