我在尝试使用JQuery插件时遇到以下错误。Uncaught TypeError:Object [object Object] has no method'fancybox'
奇怪的是,当它在一个基本的HTML文件中时,它完美地工作(并且仍然),但是当我开始用PHP填充事物时,我得到这个错误。
`Uncaught TypeError: Object [object Object] has no method 'fancybox'`
的错误发生在包括线...
$('#show-slider').fancybox(function() {
这里是我的HTML。
<?php
require_once('includes/functions.php');
$id = $_GET['id'];
connect();
$q = "select * from urls where id = $id";
$r = mysql_query($q);
if($r === FALSE) {
die(mysql_error());
} else {
$arr = mysql_fetch_array($r);
}
mysql_close();
?>
<html>
<head>
<title><?=$arr[2]?></title>
<link rel="stylesheet" type="text/css" href="/includes/fancybox/jquery.fancybox-1.3.4.css" media="screen" />
<link rel="stylesheet" type="text/css" href="/includes/css/style.css" media="screen" />
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.min.js"></script>
<script type="text/javascript" src="/includes/fancybox/jquery.fancybox-1.3.4.pack.js"></script>
<script type="text/javascript">
function go() {
$('#show-slider').fancybox(function() {
$('#slider').css('display', 'inline');
});
$('#show-slider').click();
}
</script>
</head>
<body>
<iframe src="<?=$arr[1]?>" width="100%" height="100%" onload="go();">
<p>Your browser does not support iframes.</p>
</iframe>
<a id="show-slider" href="#slider" style="display: none;">Inline</a>
<div style="display: none;">
<div id="slider">
<?=$arr[3]?>
</div>
</div>
</body>
</html>
编辑:它看起来像我的.htaccess正在搞乱一点东西。
RewriteEngine On
RewriteRule ([0-9]+) show.php?id=$1
什么应该做的是只采取有数字的网址和发送它们show.php,这是我在上面张贴的文件。
当我在浏览器中访问我的css或javascript文件时,我发送到show.php页面。编辑2:是的,这是htaccess。
这是新版本,现在一切都很顺利。
RewriteEngine On
RewriteRule ^([0-9]+)$ show.php?id=$1
什么是您的PHP输出导致您的HTML无效? –
我刚刚注意到,当我尝试访问一个CSS或JavaScript文件时,我的.htaccess正在干扰。我将使用该信息编辑原始帖子。 –