javascript - 隐藏/显示元素不适用于移动/平板电脑,仅适用于桌面
问题描述
我有 2 个按钮,Check & Back。
当用户单击Check时,按钮应更改为Back,因此他们不能连续单击Check 2 次。但是,在 chrome devtools 的移动视图上,这不起作用。
有什么建议吗?提前致谢!
<button type="button" class='btn goCheck' id="goCheck" data-show="back" style="width: 100%;">Check</button>
<button type="button" class='btn goBack' id="back" style="width: 100%; display: none;" onClick="refreshPage()">Back</button>
$(document).ready(function(){
$('.goCompare').click(function(){
$('.goCheck').hide()
$('.selectBtn').hide()
$('#'+$(this).attr('data-show')).show()
})
})
解决方案
我已经在 Chrome Devtools 中测试了这个答案并确认了功能。
我认为 jquery 在这里有点矫枉过正,我认为如果你只有一个由事件侦听器控制的按钮会更好。
document.getElementById("goCompareBack").addEventListener('click', function(e) {
if (document.getElementById("goCompareBack").innerHTML === "Back") {
refreshPage();
} else {
document.getElementById("goCompareBack").innerHTML = "Back";
compare();
}
})
function refreshPage() {
window.location.reload();
}
function compare() {
// comparing logic here
}
<button type="button" class='btn goCompareBack' id="goCompareBack" data-show="compareBack" style="width: 100%;">Compare</button>
推荐阅读
- javascript - ESLint:在引用前一个状态时在 setState 中使用回调
- unity3d - Unity - 颜色隔离效果指南
- angular - 如何修复 signInWithPopup() about:blank pop up
- ibm-midrange - 在调试模式下按 F10 时,初始化大记录大约需要 20 分钟
- c# - 按住鼠标按钮时进行充电
- forms - 如何访问子表单中的实体实例?
- amazon-web-services - 如何将 env var 设置为 AWS EMR 主节点
- python - 是否可以模拟以二进制和文本模式读写文件的平台?
- python - 在 Python 中检查浮点数是否介于两个数字之间的优雅方法?
- maven - Micronaut - 使用 Maven 编译 Kotlin 代码