我正在编写一个代码,其中观看者计数每 10 秒自动刷新一次。问题是,没有任何输出,并且在控制台上显示无法读取 null 的属性“load”
我使用它作为我的代码:
<script type="text/javascript">
var auto_refresh = setInterval(
function ()
{
$('#viewers').load('ajax.php?request=viewers&id=19').fadeIn("slow");
}, 10000); // refresh every 10000 milliseconds
</script>
PHP
<?php
define('IN_MYBB', 1); require "./global.php";
require_once MYBB_ROOT."/inc/class_parser.php";
switch ($_GET['request']) {
case 'viewers':
$urlid = $db->escape_string($_GET['id']); // never trust any user inpit
$result = $db->query("SELECT * FROM ****_streams WHERE id='$urlid'");
$row = $db->fetch_array($result);
echo "Viewers: ".$row['viewers'];
break;
case 'contact':
break;
default:
break;
}
?>
有人可以帮忙吗?非常感谢!
最佳答案
看起来 $('#viewers')
调用返回 null。这对于 jQuery 来说是不正常的,因为在每种情况下它都会返回一个对象,即使它不包含任何匹配元素。
因此,我怀疑您可能在加载 jQuery 时遇到问题。这可能只是与 $
符号发生冲突,由 jQuery 以外的某些脚本处理,因此请尝试使用:
jQuery('#viewers').load(/*....*/)
如果这也不起作用,那么可能是 jQuery 甚至没有加载到您的页面上,因此请检查您的脚本引用。
关于javascript - 无法读取 null 的属性 'load',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23578649/