Discuz!官方免费开源建站系统

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

[求助] 以下代码在自定义模块模板中无法执行

[复制链接]
wskty 发表于 2012-12-3 17:04:44 | 显示全部楼层 |阅读模式
问题描述
适用版本: Discuz! X2.5
浏览器: IE8 
使用模板: 其他模板(请在回帖中说明模板的名称或者是模板的下载地址)
BUG地址: http://www.jinshang88.com
我自己写了个DZ门户。然后发现门户标题在DIY模块中无法显示完整,有的过长。
由于我就想到两个办法来解决,
1.截取标题的长度。即需要和JS交互,不过我没有找到相关的资料。没有实现。
2.对内容过长的标题进行左右滚动显示,即鼠标移上去,它进行滚动以显示完整。

我选择的第二种,同时,香港文汇报也是这样做的。
我的代码在本是的HTM单页中也实现了。没有问题。可是一放到自定义的模板中,就不行了。请大家指导下。代码如下:
  1. <style type="text/css">
  2. .infocon1 {        margin-bottom: 5px;  width: 129px; padding-left:10px;}
  3. .infocon1 li {
  4.         display: inline-block; padding-left: 13px; font-size: 12px;  margin-left: 5px; overflow: hidden; width: 197px; line-height: 22px; white-space: nowrap; height: 22px
  5. }</style>
  6. <script type="text/javascript">
  7. <!--
  8. var interMove;

  9. function SearchEvent(){
  10.     func = SearchEvent.caller;
  11.     while(func != null) {
  12.         var arg0 = func.arguments[0];
  13.         if(arg0) {
  14.             if(arg0.constructor == Event)
  15.                 return arg0;
  16.         }
  17.         func = func.caller;
  18.     }
  19.     return null;
  20. }
  21. function doMove(){
  22.     if(window.event){
  23.                 var divMove = event.srcElement.parentNode;
  24.                 var aWidth = divMove.clientWidth;
  25.                 var bWidth = divMove.scrollWidth;
  26.                 if(aWidth < bWidth){
  27.                         interMove = setInterval(function(){ divMove.scrollLeft += 10; }, 200);
  28.                 }
  29.         }
  30.         else{
  31.                 var evt = SearchEvent();
  32.                 var divMove = evt.target;
  33.                 var aWidth = divMove.clientWidth;
  34.                 var bWidth = divMove.scrollWidth;
  35.                 if(aWidth < bWidth){
  36.                         interMove = setInterval(function(){ divMove.scrollLeft += 10; }, 200);
  37.                 }
  38.         }
  39.         if(document.all){
  40.                 divMove.attachEvent ('onmouseout', doReset);
  41.         }
  42.         else{
  43.                 divMove.addEventListener('mouseout', doReset, false);
  44.         }
  45. }
  46. function doReset(){
  47.     if(window.event){
  48.                 var divMove = event.srcElement;
  49.                 if(divMove.clientWidth < divMove.scrollWidth){
  50.                         clearInterval(interMove)
  51.                         divMove.scrollLeft = 0;
  52.                 }
  53.         }
  54.         else{
  55.                 var evt = SearchEvent();
  56.                 var divMove = evt.target;
  57.                 if(divMove.clientWidth < divMove.scrollWidth){
  58.                         clearInterval(interMove)
  59.                         divMove.scrollLeft = 0;
  60.                 }
  61.     }
  62. }
  63. function add_Move(){
  64.         var children = document.getElementsByTagName('a') || document.all;
  65.         for(i = 0; i < children.length; i++)
  66.         {
  67.                 if(children[i].id=='m')
  68.                 {
  69.                         if(document.all){
  70.                                 children[i].attachEvent('onmouseover', doMove);
  71.                         }
  72.                         else{
  73.                                 children[i].addEventListener('mouseover', doMove, false);
  74.                         }
  75.                 }
  76.         }
  77. }
  78. window.attachEvent("onload", add_Move);
  79. //-->
  80. </script>
  81. <ul class="left infocon1">
  82. [loop]
  83. <li ><a id="m" href="{url}" title="{title}"{target}>{title}</a></li>
  84. [/loop]
  85. </ul>
复制代码
xiaogang-kj 发表于 2013-2-5 17:26:42 | 显示全部楼层
模板里面支持javascript代码吗?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|Discuz! 官方站 ( 皖ICP备16010102号 )star

GMT+8, 2024-11-25 13:45 , Processed in 0.024321 second(s), 4 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表