2012-03-27 80 views
0

我有一个脚本,我需要在Joomla 2.5中使用,但是它似乎不适用于新版本?我有什么选择?Mootools脚本工作在Joomla 1.5,不是在2.5?

这里是文件脚本的完整代码。

echo "<script language=\"javascript\" type=\"text/javascript\" src=\"".JURI::base()."/modules/mod_imageshowcase/mootools-release-1.11.js\"></script>\n"; 
} 
echo 
    "<script language=\"javascript\" type=\"text/javascript\">\n". 
    "var praiseShowStartImage_".$moduleInstanceId." = '".$startImage."';\n". 
    "var praiseShowImageOrder_".$moduleInstanceId." = '".$imageOrder."';\n". 
    "var praiseShowPingPong_".$moduleInstanceId." = ".$pingPong.";\n". 
    "var praiseShowImageCount_".$moduleInstanceId." = ".$index.";\n". 
    "var praiseShowFxs_".$moduleInstanceId." = new Array();\n". 
    "var praiseShowCurrentImageIndex_".$moduleInstanceId.";\n". 
    "var praiseShowPlayCount_".$moduleInstanceId." = ".$playCount.";\n". 
    "var praiseShowCurrentPlayCount_".$moduleInstanceId." = 0;\n". 
    "if(praiseShowStartImage_".$moduleInstanceId." == 'random')\n". 
    "{\n". 
    " praiseShowCurrentImageIndex_".$moduleInstanceId." = Math.floor(Math.random()*praiseShowImageCount_".$moduleInstanceId.");\n". 
    "}\n". 
    "else if(praiseShowStartImage_".$moduleInstanceId." == 'last_seen')\n". 
    "{\n". 
    " praiseShowCurrentImageIndex_".$moduleInstanceId." = Cookie.get('praiseShowLastIndex_".$moduleInstanceId."');\n". 
    " if(!praiseShowCurrentImageIndex_".$moduleInstanceId.") { praiseShowCurrentImageIndex_".$moduleInstanceId." = 0; }\n". 
    "}\n". 
    "else if(praiseShowImageOrder_".$moduleInstanceId." == 'backward')\n". 
    "{\n". 
    " praiseShowCurrentImageIndex_".$moduleInstanceId." = praiseShowImageCount_".$moduleInstanceId." - 1;\n". 
    "}\n". 
    "else\n". 
    "{\n". 
    " praiseShowCurrentImageIndex_".$moduleInstanceId." = 0;\n". 
    "}\n". 
    "window.addEvent('domready',function() {\n". 
    $domreadyScript. 
    "});\n". 
    "window.addEvent('load',function() {\n". 
    " var coords = $('".$containerTagId."').getCoordinates();\n". 
    " var elImage;\n". 
    " var elImageCoords;\n". 
    " $$('.mod_imageshowcase_div_".$moduleInstanceId."').each(function(el, i)\n". 
    " {\n". 
    "  elImage = el.getElement('.mod_imageshowcase_image');\n"; 

if($imageScaleMode == "fit_both" || $imageScaleMode == "fit_height") 
{ 
    echo "   elImage.setStyle('height', coords.height + 'px');\n"; 
} 
if($imageScaleMode == "fit_both" || $imageScaleMode == "fit_width") 
{ 
    echo "   elImage.setStyle('width', coords.width + 'px');\n"; 
} 

if($imageScaleMode != "fit_both") 
{ 
    switch($imageVerticalAlign) 
    { 
     case "top": 
      $jsVerticalAlignText = "0"; 
      break; 
     case "center": 
      $jsVerticalAlignText = "(coords.height/2 - elImageCoords.height/2)"; 
      break; 
     case "bottom": 
     default: 
      $jsVerticalAlignText = "(coords.height - elImageCoords.height)"; 
      break; 
    } 
    switch($imageHorizontalAlign) 
    { 
     case "left": 
      $jsHorizontalAlignText = "0"; 
      break; 
     case "center": 
      $jsHorizontalAlignText = "(coords.width/2 - elImageCoords.width/2)"; 
      break; 
     case "right": 
     default: 
      $jsHorizontalAlignText = "(coords.width - elImageCoords.width)"; 
      break; 
    } 
    echo 
     "  elImageCoords = elImage.getCoordinates();\n". 
     "  elImage.setStyle('left', ".$jsHorizontalAlignText." + 'px');\n". 
     "  elImage.setStyle('top', ".$jsVerticalAlignText." + 'px');\n"; 
} 
echo 
    "  if(i == praiseShowCurrentImageIndex_".$moduleInstanceId.") { el.setStyle('opacity', 1); }\n". 
    "  else { el.setStyle('opacity', 0); }\n". 
    "  praiseShowFxs_".$moduleInstanceId."[i] = new Fx.Style(el, 'opacity', {\n". 
    "   wait: false,\n". 
    "   duration: " . $transition_time . ",\n". 
    "   transition: Fx.Transitions.Quart.easeInOut\n". 
    "  });\n". 
    " });\n". 
    " switchImage_".$moduleInstanceId.".periodical(" . ($delay_time + $transition_time) . ");\n". 
    "});\n". 
    "var switchImage_".$moduleInstanceId." = function()\n". 
    "{\n". 
    " var nextImageIndex = praiseShowCurrentImageIndex_".$moduleInstanceId.";\n". 
    " switch(praiseShowImageOrder_".$moduleInstanceId.")\n". 
    " {\n". 
    "  case 'random':\n". 
    "   while(nextImageIndex == praiseShowCurrentImageIndex_".$moduleInstanceId." && praiseShowImageCount_".$moduleInstanceId." > 0)\n". 
    "   {\n". 
    "    nextImageIndex = Math.floor(Math.random()*praiseShowImageCount_".$moduleInstanceId.");\n". 
    "   }\n". 
    "   break;\n". 
    "  case 'backward':\n". 
    "   nextImageIndex = praiseShowCurrentImageIndex_".$moduleInstanceId." - 1;\n". 
    "   if(nextImageIndex < 0) {\n". 
    "    if(praiseShowPingPong_".$moduleInstanceId.") {\n". 
    "     praiseShowImageOrder_".$moduleInstanceId." = 'forward';\n". 
    "     nextImageIndex = 1;\n". 
    "     praiseShowCurrentPlayCount_".$moduleInstanceId."++;\n". 
    "    } else {\n". 
    "     nextImageIndex = praiseShowImageCount_".$moduleInstanceId." - 1;\n". 
    "    }\n". 
    "   }\n". 
    "   break;\n". 
    "  default:\n". 
    "   nextImageIndex = praiseShowCurrentImageIndex_".$moduleInstanceId." + 1;\n". 
    "   if(nextImageIndex >= praiseShowImageCount_".$moduleInstanceId.") {\n". 
    "    if(praiseShowPingPong_".$moduleInstanceId.") {\n". 
    "     praiseShowImageOrder_".$moduleInstanceId." = 'backward';\n". 
    "     nextImageIndex = praiseShowImageCount_".$moduleInstanceId." - 2;\n". 
    "     praiseShowCurrentPlayCount_".$moduleInstanceId."++;\n". 
    "    } else {\n". 
    "     nextImageIndex = 0;\n". 
    "    }\n". 
    "   }\n". 
    "   break;\n". 
    " }\n". 
    " praiseShowCurrentPlayCount_".$moduleInstanceId."++;\n". 
    " if(praiseShowPlayCount_".$moduleInstanceId." == 0 || praiseShowCurrentPlayCount_".$moduleInstanceId." < praiseShowPlayCount_".$moduleInstanceId."*praiseShowImageCount_".$moduleInstanceId.") {\n". 
    "  praiseShowFxs_".$moduleInstanceId."[praiseShowCurrentImageIndex_".$moduleInstanceId."].start(1, 0);\n". 
    "  praiseShowFxs_".$moduleInstanceId."[nextImageIndex].start(0, 1);\n". 
    "  praiseShowCurrentImageIndex_".$moduleInstanceId." = nextImageIndex;\n". 
    "  Cookie.set('praiseShowLastIndex_".$moduleInstanceId."', praiseShowCurrentImageIndex_".$moduleInstanceId.");\n". 
    " }\n". 
    "}\n". 
    "</script>\n"; 

查看源文件:

<body id="page_bg" class="color_blue bg_blue width_fmax"> 
<a name="up" id="up"></a> 
<div class="center" align="center"> 
    <div id="wrapper"> 
     <div id="wrapper_r"> 
      <div id="header"> 
       <div id="header_l"> 
        <div id="header_r"> 
         <div id="logo"></div> 

        </div> 
       </div> 
      </div> 

      <div id="tabarea"> 
       <div id="tabarea_l"> 
        <div id="tabarea_r"> 
         <div id="tabmenu"> 
         <table cellpadding="0" cellspacing="0" class="pill"> 
          <tr> 
           <td class="pill_l">&nbsp;</td> 
           <td class="pill_m"> 
           <div id="pillmenu"> 

           </div> 
           </td> 
           <td class="pill_r">&nbsp;</td> 
          </tr> 
          </table> 
         </div> 
        </div> 
       </div> 
      </div> 

      <div id="search"> 

      </div> 

      <div id="pathway"> 
       <link href="http://localhost/test//modules/mod_imageshowcase/mod_imageshowcase.css" rel="stylesheet" type="text/css" /> 
<div style="" class="mod_imageshowcase_container" id="mod_imageshowcase_containerTagId_16"> 
<div style="opacity: 0; filter: alpha(opacity = 0)" id="mod_imageshowcase_divIdPrefix_160" class="mod_imageshowcase_div mod_imageshowcase_div_16"> 
<img id="mod_imageshowcase_imageIdPrefix_160" class="mod_imageshowcase_image" src="http://localhost/test//modules/mod_imageshowcase/testimages/CMS-Tactics-Inc-logo.gif" title="" /> 
<br /> 
</div> 
<div style="opacity: 0; filter: alpha(opacity = 0)" id="mod_imageshowcase_divIdPrefix_161" class="mod_imageshowcase_div mod_imageshowcase_div_16"> 
<img id="mod_imageshowcase_imageIdPrefix_161" class="mod_imageshowcase_image" src="http://localhost/test//modules/mod_imageshowcase/testimages/beeheard-logo.png" title="" /> 
<br /> 
</div> 
<div style="opacity: 0; filter: alpha(opacity = 0)" id="mod_imageshowcase_divIdPrefix_162" class="mod_imageshowcase_div mod_imageshowcase_div_16"> 
<img id="mod_imageshowcase_imageIdPrefix_162" class="mod_imageshowcase_image" src="http://localhost/test//modules/mod_imageshowcase/testimages/beeheardlite-logo.png" title="" /> 
<br /> 
</div> 
<div style="opacity: 0; filter: alpha(opacity = 0)" id="mod_imageshowcase_divIdPrefix_163" class="mod_imageshowcase_div mod_imageshowcase_div_16"> 
<img id="mod_imageshowcase_imageIdPrefix_163" class="mod_imageshowcase_image" src="http://localhost/test//modules/mod_imageshowcase/testimages/cookiescrumbslogo3.png" title="" /> 
<br /> 
</div> 
<div style="opacity: 0; filter: alpha(opacity = 0)" id="mod_imageshowcase_divIdPrefix_164" class="mod_imageshowcase_div mod_imageshowcase_div_16"> 
<img id="mod_imageshowcase_imageIdPrefix_164" class="mod_imageshowcase_image" src="http://localhost/test//modules/mod_imageshowcase/testimages/full_accesslevel-mid.jpg" title="" /> 
<br /> 
</div> 
<div style="opacity: 0; filter: alpha(opacity = 0)" id="mod_imageshowcase_divIdPrefix_165" class="mod_imageshowcase_div mod_imageshowcase_div_16"> 
<img id="mod_imageshowcase_imageIdPrefix_165" class="mod_imageshowcase_image" src="http://localhost/test//modules/mod_imageshowcase/testimages/moo_menu_logo.jpg" title="" /> 
<br /> 
</div> 
<div style="opacity: 0; filter: alpha(opacity = 0)" id="mod_imageshowcase_divIdPrefix_166" class="mod_imageshowcase_div mod_imageshowcase_div_16"> 
<img id="mod_imageshowcase_imageIdPrefix_166" class="mod_imageshowcase_image" src="http://localhost/test//modules/mod_imageshowcase/testimages/playlistgen_dropdown.jpg" title="" /> 
<br /> 
</div> 
</div> 
<script language="javascript" type="text/javascript"> 
var praiseShowStartImage_16 = 'first'; 
var praiseShowImageOrder_16 = 'forward'; 
var praiseShowPingPong_16 = 0; 
var praiseShowImageCount_16 = 7; 
var praiseShowFxs_16 = new Array(); 
var praiseShowCurrentImageIndex_16; 
var praiseShowPlayCount_16 = 0; 
var praiseShowCurrentPlayCount_16 = 0; 
if(praiseShowStartImage_16 == 'random') 
{ 
    praiseShowCurrentImageIndex_16 = Math.floor(Math.random()*praiseShowImageCount_16); 
} 
else if(praiseShowStartImage_16 == 'last_seen') 
{ 
    praiseShowCurrentImageIndex_16 = Cookie.get('praiseShowLastIndex_16'); 
    if(!praiseShowCurrentImageIndex_16) { praiseShowCurrentImageIndex_16 = 0; } 
} 
else if(praiseShowImageOrder_16 == 'backward') 
{ 
    praiseShowCurrentImageIndex_16 = praiseShowImageCount_16 - 1; 
} 
else 
{ 
    praiseShowCurrentImageIndex_16 = 0; 
} 
window.addEvent('domready',function() { 
}); 
window.addEvent('load',function() { 
    var coords = $('mod_imageshowcase_containerTagId_16').getCoordinates(); 
    var elImage; 
    var elImageCoords; 
    $$('.mod_imageshowcase_div_16').each(function(el, i) 
    { 
     elImage = el.getElement('.mod_imageshowcase_image'); 
     elImageCoords = elImage.getCoordinates(); 
     elImage.setStyle('left', (coords.width/2 - elImageCoords.width/2) + 'px'); 
     elImage.setStyle('top', (coords.height/2 - elImageCoords.height/2) + 'px'); 
     if(i == praiseShowCurrentImageIndex_16) { el.setStyle('opacity', 1); } 
     else { el.setStyle('opacity', 0); } 
     praiseShowFxs_16[i] = new Fx.Style(el, 'opacity', { 
      wait: false, 
      duration: 1500, 
      transition: Fx.Transitions.Quart.easeInOut 
     }); 
    }); 
    switchImage_16.periodical(6500); 
}); 
var switchImage_16 = function() 
{ 
    var nextImageIndex = praiseShowCurrentImageIndex_16; 
    switch(praiseShowImageOrder_16) 
    { 
     case 'random': 
      while(nextImageIndex == praiseShowCurrentImageIndex_16 && praiseShowImageCount_16 > 0) 
      { 
       nextImageIndex = Math.floor(Math.random()*praiseShowImageCount_16); 
      } 
      break; 
     case 'backward': 
      nextImageIndex = praiseShowCurrentImageIndex_16 - 1; 
      if(nextImageIndex < 0) { 
       if(praiseShowPingPong_16) { 
        praiseShowImageOrder_16 = 'forward'; 
        nextImageIndex = 1; 
        praiseShowCurrentPlayCount_16++; 
       } else { 
        nextImageIndex = praiseShowImageCount_16 - 1; 
       } 
      } 
      break; 
     default: 
      nextImageIndex = praiseShowCurrentImageIndex_16 + 1; 
      if(nextImageIndex >= praiseShowImageCount_16) { 
       if(praiseShowPingPong_16) { 
        praiseShowImageOrder_16 = 'backward'; 
        nextImageIndex = praiseShowImageCount_16 - 2; 
        praiseShowCurrentPlayCount_16++; 
       } else { 
        nextImageIndex = 0; 
       } 
      } 
      break; 
    } 
    praiseShowCurrentPlayCount_16++; 
    if(praiseShowPlayCount_16 == 0 || praiseShowCurrentPlayCount_16 < praiseShowPlayCount_16*praiseShowImageCount_16) { 
     praiseShowFxs_16[praiseShowCurrentImageIndex_16].start(1, 0); 
     praiseShowFxs_16[nextImageIndex].start(0, 1); 
     praiseShowCurrentImageIndex_16 = nextImageIndex; 
     Cookie.set('praiseShowLastIndex_16', praiseShowCurrentImageIndex_16); 
    } 
} 
</script> 


      </div> 

      <div class="clr"></div> 

      <div id="whitebox"> 
       <div id="whitebox_t"> 
        <div id="whitebox_tl"> 
         <div id="whitebox_tr"></div> 
        </div> 
       </div> 

       <div id="whitebox_m"> 
        <div id="area"> 


         <div id="leftcolumn"> 
                  <div class="module_menu"> 
      <div> 
       <div> 
        <div> 
                <h3>Main Menu</h3> 
              <ul class="menu"><li id="current" class="active item1"><a href="http://localhost/test/"><span>Home</span></a></li></ul>     </div> 
       </div> 
      </div> 
     </div> 

               </div> 

               <div id="maincolumn"> 

          <table class="nopad"> 
           <tr valign="top"> 
            <td> 
             <div class="componentheading"> 
    Test</div> 
<table class="blog" cellpadding="0" cellspacing="0"> 
<tr> 
    <td valign="top"> 
       </td> 
</tr> 


</table> 


            </td> 
                    </tr> 
          </table> 

         </div> 
         <div class="clr"></div> 
        </div> 
        <div class="clr"></div> 
       </div> 

       <div id="whitebox_b"> 
        <div id="whitebox_bl"> 
         <div id="whitebox_br"></div> 
        </div> 
       </div> 
      </div> 

      <div id="footerspacer"></div> 
     </div> 

     <div id="footer"> 
      <div id="footer_l"> 
       <div id="footer_r"> 
        <p id="syndicate"> 

        </p> 
        <p id="power_by"> 
         Powered by <a href="http://www.joomla.org">Joomla!</a>. 
         valid <a href="http://validator.w3.org/check/referer">XHTML</a> and <a href="http://jigsaw.w3.org/css-validator/check/referer">CSS</a>. 
        </p> 
       </div> 
      </div> 
     </div> 
    </div> 
</div> 


</body> 

只渲染脚本:

<script language="javascript" type="text/javascript"> 
var praiseShowStartImage_16 = 'first'; 
var praiseShowImageOrder_16 = 'forward'; 
var praiseShowPingPong_16 = 0; 
var praiseShowImageCount_16 = 7; 
var praiseShowFxs_16 = new Array(); 
var praiseShowCurrentImageIndex_16; 
var praiseShowPlayCount_16 = 0; 
var praiseShowCurrentPlayCount_16 = 0; 
if(praiseShowStartImage_16 == 'random') 
{ 
    praiseShowCurrentImageIndex_16 = Math.floor(Math.random()*praiseShowImageCount_16); 
} 
else if(praiseShowStartImage_16 == 'last_seen') 
{ 
    praiseShowCurrentImageIndex_16 = Cookie.get('praiseShowLastIndex_16'); 
    if(!praiseShowCurrentImageIndex_16) { praiseShowCurrentImageIndex_16 = 0; } 
} 
else if(praiseShowImageOrder_16 == 'backward') 
{ 
    praiseShowCurrentImageIndex_16 = praiseShowImageCount_16 - 1; 
} 
else 
{ 
    praiseShowCurrentImageIndex_16 = 0; 
} 
window.addEvent('domready',function() { 
}); 
window.addEvent('load',function() { 
    var coords = $('mod_imageshowcase_containerTagId_16').getCoordinates(); 
    var elImage; 
    var elImageCoords; 
    $$('.mod_imageshowcase_div_16').each(function(el, i) 
    { 
     elImage = el.getElement('.mod_imageshowcase_image'); 
     elImageCoords = elImage.getCoordinates(); 
     elImage.setStyle('left', (coords.width/2 - elImageCoords.width/2) + 'px'); 
     elImage.setStyle('top', (coords.height/2 - elImageCoords.height/2) + 'px'); 
     if(i == praiseShowCurrentImageIndex_16) { el.setStyle('opacity', 1); } 
     else { el.setStyle('opacity', 0); } 
     praiseShowFxs_16[i] = new Fx.Style(el, 'opacity', { 
      wait: false, 
      duration: 1500, 
      transition: Fx.Transitions.Quart.easeInOut 
     }); 
    }); 
    switchImage_16.periodical(6500); 
}); 
var switchImage_16 = function() 
{ 
    var nextImageIndex = praiseShowCurrentImageIndex_16; 
    switch(praiseShowImageOrder_16) 
    { 
     case 'random': 
      while(nextImageIndex == praiseShowCurrentImageIndex_16 && praiseShowImageCount_16 > 0) 
      { 
       nextImageIndex = Math.floor(Math.random()*praiseShowImageCount_16); 
      } 
      break; 
     case 'backward': 
      nextImageIndex = praiseShowCurrentImageIndex_16 - 1; 
      if(nextImageIndex < 0) { 
       if(praiseShowPingPong_16) { 
        praiseShowImageOrder_16 = 'forward'; 
        nextImageIndex = 1; 
        praiseShowCurrentPlayCount_16++; 
       } else { 
        nextImageIndex = praiseShowImageCount_16 - 1; 
       } 
      } 
      break; 
     default: 
      nextImageIndex = praiseShowCurrentImageIndex_16 + 1; 
      if(nextImageIndex >= praiseShowImageCount_16) { 
       if(praiseShowPingPong_16) { 
        praiseShowImageOrder_16 = 'backward'; 
        nextImageIndex = praiseShowImageCount_16 - 2; 
        praiseShowCurrentPlayCount_16++; 
       } else { 
        nextImageIndex = 0; 
       } 
      } 
      break; 
    } 
    praiseShowCurrentPlayCount_16++; 
    if(praiseShowPlayCount_16 == 0 || praiseShowCurrentPlayCount_16 < praiseShowPlayCount_16*praiseShowImageCount_16) { 
     praiseShowFxs_16[praiseShowCurrentImageIndex_16].start(1, 0); 
     praiseShowFxs_16[nextImageIndex].start(0, 1); 
     praiseShowCurrentImageIndex_16 = nextImageIndex; 
     Cookie.set('praiseShowLastIndex_16', praiseShowCurrentImageIndex_16); 
    } 
} 
</script> 

我相信这是目前mootools的V1.11。 谢谢。

+0

eeek看起来得到了切出,可以从你在浏览器中查看源文件复制和粘贴?或提供一个链接? – 2012-03-27 19:45:38

+0

它位于本地主机上。我编辑了这篇文章,现在应该包含完整的脚本。如果你喜欢,我还可以从浏览器中复制视图源? – theoth 2012-03-27 21:13:12

+0

是的,这将是伟大的 – 2012-03-27 21:16:08

回答

4

确定的第一件事是这样的:

new Fx.Style(el, 'opacity', { 
    wait: false, 
    duration: 1500, 
    transition: Fx.Transitions.Quart.easeInOut 
}); 

更改为:

new Fx.Tween(el, { 
    link: 'cancel', 
    duration: 1500, 
    transition: Fx.Transitions.Quart.easeInOut, 
    property: 'opacity' 
}).start(el.getStyle('opacity').toInt()?0:1); 

后返回结果,并在Firebug(或同等学历)的任何错误;

UPDATE:

if(i == praiseShowCurrentImageIndex_16) { el.setStyle('opacity', 1); } 
     else { el.setStyle('opacity', 0); } 

if(i == praiseShowCurrentImageIndex_16) { 
    var targetOpacity = 1; 
    el.setStyle('opacity', targetOpacity); 
} else { 
    var targetOpacity = 0; 
    el.setStyle('opacity', targetOpacity); 
} 

上的启动功能通:

到此行

el.getStyle('opacity').toInt()?0:1 

将也改变其实更好

new Fx.Tween(el, { 
    link: 'cancel', 
    duration: 1500, 
    transition: Fx.Transitions.Quart.easeInOut, 
    property: 'opacity' 
}).start(targetOpacity); 

更新PHP(没有简单的方法测试顶部可能是小错误)

echo 
     "<script language=\"javascript\" type=\"text/javascript\">\n". 
     "var praiseShowStartImage_".$moduleInstanceId." = '".$startImage."';\n". 
     "var praiseShowImageOrder_".$moduleInstanceId." = '".$imageOrder."';\n". 
     "var praiseShowPingPong_".$moduleInstanceId." = ".$pingPong.";\n". 
     "var praiseShowImageCount_".$moduleInstanceId." = ".$index.";\n". 
     "var praiseShowFxs_".$moduleInstanceId." = new Array();\n". 
     "var praiseShowCurrentImageIndex_".$moduleInstanceId.";\n". 
     "var praiseShowPlayCount_".$moduleInstanceId." = ".$playCount.";\n". 
     "var praiseShowCurrentPlayCount_".$moduleInstanceId." = 0;\n". 
     "if(praiseShowStartImage_".$moduleInstanceId." == 'random')\n". 
     "{\n". 
     " praiseShowCurrentImageIndex_".$moduleInstanceId." = Math.floor(Math.random()*praiseShowImageCount_".$moduleInstanceId.");\n". 
     "}\n". 
     "else if(praiseShowStartImage_".$moduleInstanceId." == 'last_seen')\n". 
     "{\n". 
     " praiseShowCurrentImageIndex_".$moduleInstanceId." = Cookie.get('praiseShowLastIndex_".$moduleInstanceId."');\n". 
     " if(!praiseShowCurrentImageIndex_".$moduleInstanceId.") { praiseShowCurrentImageIndex_".$moduleInstanceId." = 0; }\n". 
     "}\n". 
    "else if(praiseShowImageOrder_".$moduleInstanceId." == 'backward')\n". 
    "{\n". 
    " praiseShowCurrentImageIndex_".$moduleInstanceId." = praiseShowImageCount_".$moduleInstanceId." - 1;\n". 
    "}\n". 
    "else\n". 
    "{\n". 
    " praiseShowCurrentImageIndex_".$moduleInstanceId." = 0;\n". 
    "}\n". 
    "window.addEvent('domready',function() {\n". 
    $domreadyScript. 
    "});\n". 
    "window.addEvent('load',function() {\n". 
    " var coords = $('".$containerTagId."').getCoordinates();\n". 
    " var elImage;\n". 
    " var elImageCoords;\n". 
    " $$('.mod_imageshowcase_div_".$moduleInstanceId."').each(function(el, i)\n". 
    " {\n". 
    "  elImage = el.getElement('.mod_imageshowcase_image');\n"; 

    if($imageScaleMode == "fit_both" || $imageScaleMode == "fit_height") 
    { 
    echo "   elImage.setStyle('height', coords.height + 'px');\n"; 
    } 
    if($imageScaleMode == "fit_both" || $imageScaleMode == "fit_width") 
    { 
    echo "   elImage.setStyle('width', coords.width + 'px');\n"; 
    } 

    if($imageScaleMode != "fit_both") 
    { 
    switch($imageVerticalAlign) 
    { 
    case "top": 
    $jsVerticalAlignText = "0"; 
    break; 
    case "center": 
    $jsVerticalAlignText = "(coords.height/2 - elImageCoords.height/2)"; 
    break; 
    case "bottom": 
    default: 
    $jsVerticalAlignText = "(coords.height - elImageCoords.height)"; 
    break; 
    } 
    switch($imageHorizontalAlign) 
    { 
    case "left": 
    $jsHorizontalAlignText = "0"; 
    break; 
    case "center": 
    $jsHorizontalAlignText = "(coords.width/2 - elImageCoords.width/2)"; 
    break; 
    case "right": 
    default: 
    $jsHorizontalAlignText = "(coords.width - elImageCoords.width)"; 
    break; 
    } 
    echo 
    "  elImageCoords = elImage.getCoordinates();\n". 
    "  elImage.setStyle('left', ".$jsHorizontalAlignText." + 'px');\n". 
    "  elImage.setStyle('top', ".$jsVerticalAlignText." + 'px');\n"; 
    } 
    echo 
    "  if(i == praiseShowCurrentImageIndex_".$moduleInstanceId.") { var targetOpacity = 1; el.setStyle('opacity', targetOpacity); }\n". 
    "  else { var targetOpacity = 0; el.setStyle('opacity', targetOpacit); }\n". 
    "  praiseShowFxs_".$moduleInstanceId."[i] = Fx.Tween(el, {\n". 
    "   link: 'cancel',\n". 
    "   duration: " . $transition_time . ",\n". 
    "   transition: Fx.Transitions.Quart.easeInOut,\n". 
    "   property: 'opacity'\n". 
    "  }).start(targetOpacity);\n". 
    " });\n". 
    " switchImage_".$moduleInstanceId.".periodical(" . ($delay_time + $transition_time) . ");\n". 
    "});\n". 
    "var switchImage_".$moduleInstanceId." = function()\n". 
    "{\n". 
    " var nextImageIndex = praiseShowCurrentImageIndex_".$moduleInstanceId.";\n". 
    " switch(praiseShowImageOrder_".$moduleInstanceId.")\n". 
    " {\n". 
    "  case 'random':\n". 
    "   while(nextImageIndex == praiseShowCurrentImageIndex_".$moduleInstanceId." && praiseShowImageCount_".$moduleInstanceId." > 0)\n". 
    "   {\n". 
    "    nextImageIndex = Math.floor(Math.random()*praiseShowImageCount_".$moduleInstanceId.");\n". 
    "   }\n". 
    "   break;\n". 
    "  case 'backward':\n". 
    "   nextImageIndex = praiseShowCurrentImageIndex_".$moduleInstanceId." - 1;\n". 
    "   if(nextImageIndex < 0) {\n". 
    "    if(praiseShowPingPong_".$moduleInstanceId.") {\n". 
    "     praiseShowImageOrder_".$moduleInstanceId." = 'forward';\n". 
    "     nextImageIndex = 1;\n". 
    "     praiseShowCurrentPlayCount_".$moduleInstanceId."++;\n". 
    "    } else {\n". 
    "     nextImageIndex = praiseShowImageCount_".$moduleInstanceId." - 1;\n". 
    "    }\n". 
    "   }\n". 
    "   break;\n". 
    "  default:\n". 
    "   nextImageIndex = praiseShowCurrentImageIndex_".$moduleInstanceId." + 1;\n". 
    "   if(nextImageIndex >= praiseShowImageCount_".$moduleInstanceId.") {\n". 
    "    if(praiseShowPingPong_".$moduleInstanceId.") {\n". 
    "     praiseShowImageOrder_".$moduleInstanceId." = 'backward';\n". 
    "     nextImageIndex = praiseShowImageCount_".$moduleInstanceId." - 2;\n". 
    "     praiseShowCurrentPlayCount_".$moduleInstanceId."++;\n". 
    "    } else {\n". 
    "     nextImageIndex = 0;\n". 
    "    }\n". 
    "   }\n". 
    "   break;\n". 
    " }\n". 
    " praiseShowCurrentPlayCount_".$moduleInstanceId."++;\n". 
    " if(praiseShowPlayCount_".$moduleInstanceId." == 0 || praiseShowCurrentPlayCount_".$moduleInstanceId." < praiseShowPlayCount_".$moduleInstanceId."*praiseShowImageCount_".$moduleInstanceId.") {\n". 
    "  praiseShowFxs_".$moduleInstanceId."[praiseShowCurrentImageIndex_".$moduleInstanceId."].start(1, 0);\n". 
    "  praiseShowFxs_".$moduleInstanceId."[nextImageIndex].start(0, 1);\n". 
    "  praiseShowCurrentImageIndex_".$moduleInstanceId." = nextImageIndex;\n". 
    "  Cookie.set('praiseShowLastIndex_".$moduleInstanceId."', praiseShowCurrentImageIndex_".$moduleInstanceId.");\n". 
    " }\n". 
    "}\n". 
    "</script>\n"; 
+0

非常感谢您对这些更改,我非常感谢!但是,我已经去做了这些改变并遇到了问题。我需要编辑的代码是您在第一个代码块(原始帖子)中看到的代码。它被php代码所包围,所以我不能只复制新代码。 – theoth 2012-03-27 22:50:07

+0

你是对的,它需要一点时间来匹配 – 2012-03-27 23:11:16

+0

从1.12到1.2:https://github.com/fakedarren/mootools-upgrade-helper或者只是使用从我认为的博客构建的版本。 从1.2到1.3:https://github.com/fakedarren/MooTools-1.3-Upgrade-Helper – 2012-03-28 10:49:28

4

貌似的Joomla 2.5使用MooTools的1.4

的Joomla 1.5采用1.12

你唯一的选择是手动更新的mootools 1.12代码MooTools的1.4标准。

网上有很多资源可以帮助你解决这个问题。

你有没有工作的代码链接?

此链接将帮助您在移动从1.1到1.2(在这一点上,你可以下载和使用も兼容层[不推荐]): https://github.com/mootools/mootools-core/wiki/Conversion-from-1.11-to-1.2-

此链接将带您从1.2到1.3: https://github.com/mootools/mootools-core/wiki/Upgrade-from-1.2-to-1.3

此时,你应该是不错的MooTools的1.4插件核心改进最明显的选择器引擎升级和事件代表团(以前只能在更发现)

阅读更多:http://mootools.net/blog/2011/09/10/mootools-1-4-0/

希望这会有所帮助!

即怒视我
+0

嗨,感谢您的帮助。看着这些链接,我想我在这里有点不深。那么我需要做些什么才能“升级”呢?我需要用新方法取代旧方法吗? – theoth 2012-03-27 19:27:31

+0

认为代码未被接受 – 2012-03-27 19:29:58

+0

尝试编辑您的原代码 – 2012-03-27 19:30:25