[英]Load when the browser is open
我做了一个特殊的按钮,通过使用此js使用api显示服务器状态,我的问题是,第一次打开浏览器时,我无法使此东西自动加载,您必须实际单击该按钮,否则它不会开始运行。
function checkStatus(event)
{
jQuery.getJSON("url",function(data){
var button = document.getElementById("ServStat");
if ( data.status == '1') {
jQuery('#ServStat').addClass('online').removeClass('offline');
button.label = 'Online'; }
else {
jQuery('#ServStat').addClass('offline').removeClass('online');
button.label = 'Offline'
}
});
}
任何想法都欢迎,并在此先感谢。
只需将代码添加到document.ready函数即可。 文档完全加载后将执行该命令。
因此您的代码将变成
$(document).ready(function () {
jQuery.getJSON("url", function (data) {
var button = document.getElementById("ServStat");
if (data.status == '1') {
jQuery('#ServStat').addClass('online').removeClass('offline');
button.label = 'Online';
} else {
jQuery('#ServStat').addClass('offline').removeClass('online');
button.label = 'Offline'
}
});
});
您可以在此处获取更多详细信息: http : //api.jquery.com/ready/
$(function() {
checkStatus();
});
谢谢大家,我真的很感激您花时间和精力来回答我的问题,我对网站“是新的”,并让我告诉我对我的第一印象是长期的:)。
关于这个问题,正如你们中的大多数人已经注意到我从实践中学到的东西,而我并没有真正的深刻理解,我会尽我所能地注意并阅读我发现的所有内容,无论如何,我的朋友确实有一个对此的深入了解注意到,在我的xul文件中,脚本设置如下:
<script type="application/x-javascript" src="chrome://neverendlessbar/content/serverstatus.js" />
<script type="application/x-javascript" src="chrome://neverendlessbar/content/jquery-1.7.2.js" />
<script type="text/javascript">
$.noConflict();
</script>
正确的方法是:
<script type="application/x-javascript" src="chrome://neverendlessbar/content/jquery-1.7.2.js" />
<script type="text/javascript">
$.noConflict();
</script>
<script type="application/x-javascript" src="chrome://neverendlessbar/content/serverstatus.js" />
jQuery没有正确放置。 修复jQuery错误后,我们仅添加了一个简单的“ checkStatus();” 到代码的结尾,使我们有了这个:
function checkStatus(event)
{
jQuery.getJSON("url",function(data){
var button = document.getElementById("ServStat");
if ( data.status == '1') {
jQuery('#ServStat').addClass('online').removeClass('offline').attr('label','Online');}
else {
jQuery('#ServStat').addClass('offline').removeClass('online').attr('label','Offline');}});
}
checkStatus();
在第一次运行中工作:D。
因此,再次感谢大家,我希望有一天我能回报您:D。
阅读过epascarello的回复后,我问,确实是“ getElementById”不是必需的。
最终密码
function checkStatus()
{
jQuery.getJSON("url",function(data){
if ( data.status == '1') {jQuery('#ServStat').addClass('online').removeClass('offline').attr('label','Online');}
else {jQuery('#ServStat').addClass('offline').removeClass('online').attr('label','Offline');}});
}
checkStatus();
{
setInterval(changeState, 300000)
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.