【问题标题】:How to create separate buttons for different devices?如何为不同的设备创建单独的按钮?
【发布时间】:2013-03-28 02:12:16
【问题描述】:

我一直在使用引导程序来创建响应式网站。 我刚刚遇到了一个新场景,我不确定如何解决它。 我有以下 html 代码:

        <!-- button color depending on desktop vs. phone -->
        <button class="btn visible-desktop" id="modifyVLANS">Modify VLANS</button>
        <button class="btn hidden-desktop lsm-visible-phone btn-warning" id="modifyVLANS">Modify VLANS</button>

稍后,我有以下jquery:

    //show list
    $('#modifyVLANS').click(function()  {
            do something....

但是,因为我有两个名称相同的按钮,所以在移动设备上,onclick 事件不会触发。 我不想使用单独的事件处理程序创建两个单独的按钮......因为代码将完全相同。 我怎样才能解决这个问题?

谢谢。

【问题讨论】:

  • 你可以使用媒体查询
  • 我已经在使用内置的媒体查询了。你会注意到诸如“hidden-desktop”“visible-desktop”等类。
  • 您正在使用 id 来选择元素。 $('#modifyVLANS') 选择具有该 id 的第一个元素,并忽略其余部分。您应该每页有一个 id,因此这是一种可以理解的行为。您可以使用类属性,而不是使用 id。 -> jsfiddle.net/NLzHW/1

标签: jquery css twitter-bootstrap responsive-design


【解决方案1】:

我不会根据设备隐藏按钮,而是隐藏整个表单。在尝试为移动设备实现一种样式的&lt;input type="search"&gt; 和为桌面实现另一种样式时,我遇到了同样的问题。

然后,将您的事件处理程序绑定到按钮class 而不是id,因为即使其中一个按钮根据视图被隐藏,您仍然可以仍然只有一个带有@987654325 的元素@ 每页

这是simple fiddle

【讨论】:

  • 我正要发帖说我找到了解决方案。我已经改变了点击事件来检查类。非常感谢!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-10-02
  • 2013-12-23
  • 1970-01-01
  • 1970-01-01
  • 2016-09-06
  • 2016-01-13
相关资源
最近更新 更多