2014-01-18 39 views
0

我最近將我的公司網站移到我們未使用的網絡服務器之一,以便將Joomla後端從1.5.26更新到最新的Joomla 2.5。由於模塊,我們無法前往3.x.我使用了SP升級,並且一旦我安裝了新的主題和當前模塊,所有內容都可以很好地遷移。Javascript函數播放正確的舊網站,但不是新的

我們有一個自定義的默認主題和指定的主題到主頁。在分配的主題(分配給主菜單)目錄中,index.php在標題上方有一個腳本。我將在下面發佈此代碼。

可以在以下鏈接找到舊網站,當您第一次訪問網站時,您會看到視頻播放。 cpmchurchministries.com/old

新網站可以在以下鏈接找到,當您第一次訪問該網站時,您將只能看到一幅圖片。 cpmchurchministries.com/new

的代碼是相同的兩個站點,index.php文件:

<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"; ?> 

有沒有人遇到類似的問題?可以得到任何幫助嗎? 謝謝。 。 。

+0

你得到在控制檯中的錯誤;關於'Cookie.get()'的一些東西。 – Pointy

+0

舊網站已脫機,現在應該可以訪問。 cpmchurchministries.com/old 讓我知道你現在是否可以看到它。 我會查看你的所有迴應,看看現在有什麼建議。 非常感謝您的回覆! – user3210108

回答

2

的Joomla的較新版本,所以你需要做以下兩個功能更改代碼,您正在使用用途MooTools的圖書館的新版本:


OLD

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"); 
} 

NEW

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"); 
} 

編輯,便於複製粘貼

+0

你好,我改變了你的建議從「讀到」和「設置爲寫」的cookie代碼。我仔細觀察了代碼,我是否錯過了上面的其他更改? – user3210108

+0

我剛剛檢查了網址cpmchurchministries.com/new,它仍然有舊代碼 – Vishal

+0

好吧,讓我看看另一個地方。也許我必須改變這兩個不同的點,因爲我有兩個不同的主題模板一起工作。 – user3210108

0

由於尖說,你得到在JavaScript控制檯中的一些錯誤:

  1. 遺漏的類型錯誤:對象功能 (){E(本);如果{返回此;}($原型克) this。$ caller = null; var i =(this.initialize)?this.initialize.apply(this,arguments):this; this。$ caller = this.caller = null; 返回I;}沒有方法 '得到'(指數):27
  2. GET http://cdn.wibiya.com/Toolbars/dir_0775/Toolbar_775982/Loader_775982.js 403(禁止)(指數):249
  3. 未捕獲的ReferenceError:未定義JCaption(指數):17
  4. GET (未找到)

當發生與Javascript錯誤,停止流動,讓你的頭圖像不被視頻(更換是不是一個「視頻」,這是一個Flash SWF電影)。

一個有問題的代碼是:

<script type="text/javascript"> 
window.addEvent('load', function() { 
       new JCaption('img.caption'); 
      }); 
    </script> 

如果您不能刪除此代碼,試試這個link擺脫JCaption問題,然後再試一次您的網站。順便說一句,要查看控制檯上的錯誤,請嘗試使用Chrome瀏覽器,工具,Javascript控制檯(必須爲每個webdev!)

+0

您好,謝謝。我正在瀏覽我可以訪問的index.php代碼。我沒有看到你上面粘貼的特定代碼。我想知道這是否是在不同的index.php文件 – user3210108

+0

我去了你提供的鏈接,我做了選項3和編輯Joomla! Core 在文件components/com_content/controller.php(在Joomla!2.5.1的第51行),刪除這行代碼: JHtml :: _('behavior.caption'); – user3210108

相關問題