Javascript函数可以正确播放旧站点,但不能播放新站点
我最近将我的公司网站移动到一个未使用的web服务器上,以便将Joomla后端从1.5.26更新到最新的Joomla 2.5。由于模块的原因,我们无法访问3.x。我使用了SP升级,在安装了新主题和当前模块后,一切都进行了出色的迁移 我们有一个自定义的默认主题和一个分配给主页的主题。在分配的主题(分配给主菜单)目录中,index.php在标题上方有一个脚本。我将在下面发布此代码 在下面的链接中可以找到旧站点,当您第一次访问该站点时,您将看到视频播放。 cpm.com/old 新站点可以在下面的链接中找到,当您第一次访问该站点时,您将只看到一个图像。 www.cpm.com/new 这两个站点的代码相同,index.php:Javascript函数可以正确播放旧站点,但不能播放新站点,javascript,php,joomla,Javascript,Php,Joomla,我最近将我的公司网站移动到一个未使用的web服务器上,以便将Joomla后端从1.5.26更新到最新的Joomla 2.5。由于模块的原因,我们无法访问3.x。我使用了SP升级,在安装了新主题和当前模块后,一切都进行了出色的迁移 我们有一个自定义的默认主题和一个分配给主页的主题。在分配的主题(分配给主菜单)目录中,index.php在标题上方有一个脚本。我将在下面发布此代码 在下面的链接中可以找到旧站点,当您第一次访问该站点时,您将看到视频播放。 cpm.com/old 新站点可以在下面的链接中
<head>
<jdoc:include type="head" />
<link rel="stylesheet" href="<?php echo $this->baseurl ?>/templates/<?php echo $this->template ?>/css/template.css" type="text/css"/>
<script type="text/javascript" src="<?php echo $this->baseurl ?>/templates/<?php echo $this->template ?>/swf/swfobject.js"></script>
<script type="text/javascript">
swfobject.embedSWF("<?php echo $this->baseurl ?>/templates/chosenpeople/swf/cpm_logo.swf", "flash_logo", "245", "162", "7");
window.addEvent('domready', function() {
if($('default_header')) {
if(Cookie.get("cpm_movie") != "full") {
full_movie();
} else {
small_movie();
}
}
});
function small_movie() {
$('default_header').removeClass('full_movie');
$('default_header').addClass('small_movie');
swfobject.embedSWF("<?php echo $this->baseurl ?>/templates/cphome/swf/header_home.swf", "flash_header", "696", "157", "7");
}
function full_movie() {
$('default_header').removeClass('small_movie');
$('default_header').addClass('full_movie');
Cookie.set("cpm_movie", "full", {duration: 365});
swfobject.embedSWF("<?php echo $this->baseurl ?>/templates/cphome/swf/video_header.swf", "flash_header", "696", "400", "7");
}
</script>
<?php if ($editmode) echo '<link rel="stylesheet" href="'.$this->baseurl.'/templates/system/css/general.css" type="text/css" />'."\n"; ?>
我在您的“新站点”上有此错误:
获取403(禁止)
我无法访问“旧站点”,有一个Joomla登录页面。如果我们可以访问它来比较两个站点,那就更容易了。正如Pointy所说,Javascript控制台中出现了一些错误:
未捕获类型错误:对象函数
(){e(this);if(g.$prototyping){返回this;}this.$caller=null;var
i=(this.initialize)?this.initialize.apply(this,参数):this;this.$caller=this.caller=null;
返回i;}没有方法“get”(索引):27
得到
403(禁止)(索引):249
未捕获引用错误:未定义JCaption(索引):17
得到404
(未找到)
当Javascript出现错误时,流将停止,因此标题上的图像不会被视频替换(不是“视频”,而是flash swf电影)
其中一个违规代码是:
<script type="text/javascript">
window.addEvent('load', function() {
new JCaption('img.caption');
});
</script>
window.addEvent('load',function(){
新JCaption('img.caption');
});
如果无法删除此代码,请尝试此操作以消除JCaption问题,然后重试您的站点
顺便说一下,要查看控制台上的错误,请尝试使用Chrome浏览器、工具、Javascript控制台(每个webdev都必须使用!)您正在使用的较新版本的Joomla使用了较新版本的MooTools库,因此您需要对代码进行以下两项功能更改:
旧的
新的
编辑以便于复制粘贴控制台中出现错误;有关Cookie.get()
的信息。旧站点已脱机,现在应该可以访问了。如果你现在能看到,请告诉我。我会仔细看看你的回答,看看现在有什么建议。非常感谢大家的回复!!您好,我按照您的建议从“开始阅读”和“设置为写入”更改了cookie代码。我仔细查看了代码,是否遗漏了上面的任何其他更改?我刚刚检查了网址cpmchurch.com/new,它仍然有旧代码OK,让我看看另一个地方。可能我必须在两个不同的位置进行更改,因为我有两个不同的主题模板在一起工作。您似乎更改了代码,但添加了full_movie()的新旧版本,并替换了函数small_movie()。在此之后,代码将恢复其原始状态。请只做我指出的更改。我已经做了编辑,以便您可以轻松复制粘贴。我修复了对“旧”网站的访问权限你好,谢谢。我正在查看我有权访问的index.php代码。我看不到您上面粘贴的特定代码。我想知道这是否在一个不同的index.php文件中。我去了你提供的链接,我做了选项3并编辑了Joomla!在components/com_content/controller.php文件(Joomla!2.5.1的第51行)中,删除这行代码:JHtml::(('behavior.caption');
window.addEvent('domready', function() {
if($('default_header')) {
if(Cookie.get("cpm_movie") != "full") {
full_movie();
} else {
small_movie();
}
}
});
function small_movie() {
$('default_header').removeClass('full_movie');
$('default_header').addClass('small_movie');
swfobject.embedSWF("/new/templates/cphome/swf/header_home.swf", "flash_header", "696", "157", "7");
}
function full_movie() {
$('default_header').removeClass('small_movie');
$('default_header').addClass('full_movie');
Cookie.set("cpm_movie", "full", {duration: 365});
swfobject.embedSWF("/new/templates/cphome/swf/video_header.swf", "flash_header", "696", "400", "7");
}
window.addEvent('domready', function() {
if($('default_header')) {
if(Cookie.read("cpm_movie") != "full") {
full_movie();
} else {
small_movie();
}
}
});
function small_movie() {
$('default_header').removeClass('full_movie');
$('default_header').addClass('small_movie');
swfobject.embedSWF("/new/templates/cphome/swf/header_home.swf", "flash_header", "696", "157", "7");
}
function full_movie() {
$('default_header').removeClass('small_movie');
$('default_header').addClass('full_movie');
Cookie.write("cpm_movie", "full", {duration: 365});
swfobject.embedSWF("/new/templates/cphome/swf/video_header.swf", "flash_header", "696", "400", "7");
}