![](/img/trans.png)
[英]Javascript > HTML scroll button doesn't dissapear when at top of page
[英]button doesn't dissapear onClick (JavaScript)
我有以下代码使按钮不可见,它工作一秒钟,然后再次按钮。 在我试过的同一页面上导航的链接“返回false;” 但后来我的导航无效。
如何保持隐藏按钮?
JavaScript的
function btn_hide(){
document.getElementById("btn_shfaqe").style.display="none";
}
HTML
<a href="?tip=fin&vid_id=0" onClick="btn_hide();">test1</a>
你必须做两件事; 返回函数并返回false,如下所示:
JavaScript的
function btn_hide(){
document.getElementById("btn_shfaqe").style.display="none";
return false;
}
HTML
<a href="?tip=fin&vid_id=0" onClick="return btn_hide();">test1</a>
这是一个演示
根据评论编辑
你最好隐藏服务器按钮,但如果你真的想使用javascript,你可以在页面加载时执行此操作:
function getParameterByName(name) {
name = name.replace(/[\[]/, "\\[").replace(/[\]]/, "\\]");
var regex = new RegExp("[\\?&]" + name + "=([^&#]*)"),
results = regex.exec(location.search);
return results == null ? "" : decodeURIComponent(results[1].replace(/\+/g, " "));
}
window.onload = function() {
var vid_id = getParameterByName('vid_id');
if (vid_id == 0 || vid_id == 5) {
document.getElementById("btn_shfaqe").style.display="none";
}
}
它是一个锚标签。 我将导航到另一页。
如果您不想导航到您可能使用的其他页面
的javascript:无效(0)
如
<a href="javascript:void(0)" onclick="btn_hide();">
试试这个照片javascript:
<script>
function visibilite() {
var targetElement = document.getElementById(\'div_connexion\');
targetElement.style.display = "none";
}
</script>
这在html中:
<div id="div_connexion"><a class="connexion" href="javascript:visibilite();">Connexion</a></div>
我在我的网站上有这个,当我点击div时它会消失,直到用户刷新页面。
请尝试下面的代码片段。
<head runat="server">
<title></title>
<script type="text/javascript">
function getParameterByName(name) {
name = name.replace(/[\[]/, "\\[").replace(/[\]]/, "\\]");
var regex = new RegExp("[\\?&]" + name + "=([^&#]*)"),
results = regex.exec(location.search);
return results == null ? "" : decodeURIComponent(results[1].replace(/\+/g, " "));
}
function btn_hide() {
document.getElementById("btn_shfaqe").style.display = "none";
}
</script>
</head>
<body>
<div>
<button id="btn_shfaqe" style="display: none">
jayesh</button>
<a href="?tip=fin&vid_id=0" onclick="btn_hide();">test1</a>
<script type="text/javascript">
if (getParameterByName("tip") == "") {
document.getElementById("btn_shfaqe").style.display = "";
}
</script>
</div>
</body>
</html>
在我试过的同一页面上导航的链接“返回false;” 但后来我的导航无效。
您想要隐藏链接并仍然可以导航?
有两种方法可以解决这个问题:
服务器端:在您的网址中添加一个参数,如下所示: ?tip=fin&vid_id=0&hideButton=1
,在服务器端应用display: none;
如果已设置,则为您的元素设置样式。 如果你正在使用PHP,那么下面的内容应该可以解决问题:
<?php if (isset($_GET['hideButton'])) { echo 'style="display: none;"'; }
客户端:单击按钮时向localStorage
写入一些标志值。 加载页面时,检查是否设置了标志。 如果已设置 - 隐藏锚点。
// Onclick handler: myButton.addEventListener('click', function () { localStorage.setItem('hideButton', 'yes'); }, false); // Onload handler: window.addEventListener('load', function () { if (localStorage.getItem('hideButton') === 'yes') { myButton.style.display = 'none'; } });
使用这些方法之一将隐藏链接,同时保持导航工作。 您甚至不需要在onclick事件处理程序中隐藏按钮。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.