我有一个带有一些按钮的 jQuery Mobile 网站。如果视口为 640 像素或更宽,我想在按钮右侧显示一些文本,否则隐藏文本。
我知道用于该目的的iconpos
选项/数据属性left
,并且可以将其设置为在我需要和notext
不需要时显示文本。我可能会想出一些 Javascript 来更改属性并在页面加载、方向更改和窗口调整大小事件时刷新按钮,但这可能会变得很麻烦,而且我不确定我是否忘记了一些可能导致视口的事件宽度来改变。
编辑 2:我在多个浏览器和设备上测试了我的网站,似乎更改方向、调整窗口大小以及显示和隐藏屏幕键盘(在可能的情况下)总是导致resize
事件被触发window
对象。当然,我不确定这是否会在所有浏览器中始终发生。
我考虑过使用某种媒体查询将display
文本上的 CSS 属性设置为inline
或none
取决于视口宽度,但在查看 jQuery Mobile 的代码后,似乎该iconpos
选项影响的不仅仅是文本的可见性:它会影响尺寸、标题属性、图标位置和其他一些东西,因此仅使用 CSS 可能无法实现。
编辑:我忘了提到该按钮位于标题中,因此它是内联按钮之一。简单地通过 CSS 隐藏文本会让它看起来很有趣。
这里有人知道基于视口宽度显示或隐藏文本的简单实用方法吗?或者作为一个更普遍的问题,这里有没有人知道如何根据视口宽度更改数据属性并让 jQuery Mobile 在视口宽度发生变化时确认更改?我发现了一个关于更改数据属性的类似问题,它没有任何合理的答案。