Javascript 您能否在没有internet连接时禁用链接,并在internet连接恢复时启用它们?
当连接返回时,我得到的锚的值都是NULLJavascript 您能否在没有internet连接时禁用链接,并在internet连接恢复时启用它们?,javascript,Javascript,当连接返回时,我得到的锚的值都是NULL <script type="text/javascript"> setInterval(function(){ /*check ~every second*/ var status = navigator.onLine?'Menu Enabled!':'Menu Disabled!'; setInterval(函数(){/*check~每秒一次*/ var status=navigator.on
<script type="text/javascript">
setInterval(function(){ /*check ~every second*/
var status = navigator.onLine?'Menu Enabled!':'Menu Disabled!';
setInterval(函数(){/*check~每秒一次*/
var status=navigator.onLine?'Menu Enabled!':'Menu Disabled!';
第一部分在连接丢失时设置属性
var anchors = document.getElementsByTagName("a");
if(status == 'Menu Disabled!') { /*if connection is lost*/
for (var i = 0; i < anchors.length; i++) {
var href = anchors[i].href;
anchors[i].setAttribute("rel", href);
anchors[i].href = "javascript:;"
}
}
var-anchors=document.getElementsByTagName(“a”);
如果(状态==“菜单已禁用!”){/*如果连接丢失*/
对于(var i=0;i
这部分应该删除属性并恢复锚定
if(status == 'Menu Enabled!') { /* if connection is reconnected */
for (var i = 0; i < anchors.length; i++) {
var href = anchors[i].getAttribute("rel");
anchors[i].removeAttribute("rel");
anchors[i].href = href
}
}
}, 1000);
</script
if(状态=='Menu Enabled!'){/*如果重新连接*/
对于(var i=0;i 事件处理程序应该在JavaScript的底部定义,它应该包含在head
元素中。如果定位正确,此代码将在严格的条件下工作。你可以
事件处理程序应该在JavaScript的底部定义,它应该包含在head
元素中。如果定位正确,此代码将在严格的条件下工作。你可以
您只是在这里和那里缺少了一些{}
。下面的代码是您的代码,但已编辑
此外,您可以通过在这里或那里更改一些内容来提高代码的效率,但这回答了您的问题
注意:将三元设置为false,以强制脱机条件
setInterval(
函数(){
var status=false?'Menu Enabled!':'Menu Disabled!';
var archors=document.getElementsByTagName(“a”);
如果(状态==“菜单已禁用!”){/*如果连接断开*/
对于(var i=0;i
您只是在这里和那里缺少了一些{}
。下面的代码是您的代码,但已编辑
此外,您可以通过在这里或那里更改一些内容来提高代码的效率,但这回答了您的问题
注意:将三元设置为false,以强制脱机条件
setInterval(
函数(){
var status=false?'Menu Enabled!':'Menu Disabled!';
var archors=document.getElementsByTagName(“a”);
如果(状态==“菜单已禁用!”){/*如果连接断开*/
对于(var i=0;i
哇。从我开始写作到测试,再到我完成测试,有这么多很棒的答案
这里有一种方法可以通过一个函数仅禁用链接,如果由于以下原因第二次意外执行该函数,该函数将不会执行任何操作
const setItUp=(函数(){
让执行=假;
返回函数(){
如果(!已执行){
已执行=真;
const linkList=document.querySelectorAll('a');
for(让链接列表链接){
link.addEventListener(
“点击”,
功能(事件){
如果(!window.navigator.onLine){//不是一个完美的检查。请参阅https://developer.mozilla.org/en-US/docs/Web/API/NavigatorOnLine/onLine 更多。
警报('抱歉!您的浏览器似乎已脱机!');
event.preventDefault();
} },
错误的
);
} } }
})();
setItUp()代码>
不是链接的标准文本
哇。从我开始写作到测试,再到我完成测试,有这么多很棒的答案
这里有一种方法可以通过一个函数仅禁用链接,如果由于以下原因第二次意外执行该函数,该函数将不会执行任何操作
const setItUp=(函数(){
让执行=假;
返回函数(){
如果(!已执行){
已执行=真;
const linkList=document.querySelectorAll('a');
for(让链接列表链接){
link.addEventListener(
“点击”,
功能(事件){
如果(!window.navigator.onLine){//不是一个完美的检查。请参阅https://developer.mozilla.org/en-US/docs/Web/API/NavigatorOnLine/onLine 更多。
警报('抱歉!您的浏览器似乎已脱机!');
event.preventDefault();
} },
错误的
);
} } }
})();
setItUp()代码>
不是lin的标准文本
window.onclick = function(event)
{
if (!navigator.onLine)
{
event.preventDefault();
alert('Notice: you are no longer connected to the Internet, please check your connection and try again.');
}
}