스크롤 스킨에 있어서 dtd선언 문제? > 그누4 질문답변

그누4 질문답변

그누보드4 관련 질문은 QA 로 이전됩니다. QA 그누보드4 바로가기
기존 게시물은 열람만 가능합니다.

스크롤 스킨에 있어서 dtd선언 문제? 정보

스크롤 스킨에 있어서 dtd선언 문제?

본문

해피정닷컴님의 위로 움직이는 스크롤 배너 스킨을 사용하려 하는데, 문제는 dtd선언이라 하나요?

아래와 같이 되어 있는 지라,,
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
스크롤이 작동하지 않습니다.

그래서 저 선언을 지우면 스크롤은 정상인데, 페이지의 다른 부분이 흐틀어집니다.

무슨 방법이 없을가요?

이하, 스킨입니다.
**************************
<?php
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가

/*  위로 스크롤되는 최신글

// 사용법 :
<?php  echo latest("hp_utf_banner_scroll", "보드id", 50, 배너, "7,1");
//echo latest("스킨", "보드id", 보일게시물개수, 글제목, "한줄에보일 이미지,한번에 보일줄수"); ?>

// $rows(출력라인)는 $line_mod의 2의 배수 이상으로 설정하셔야 합니다.

// 유니크 값 (최신글은 한페이지에 여러개 둘 수 있으므로... 자바스크립트에서 함수, 변수 충돌을 방지)
*/
$uni = md5(uniqid(rand(), true));

list($td_mod,$tr_mod) = explode(",", $options);
$img_width=124; //이미지 가로
$img_height=30; //이미지세로
$margin_right = 14; // 이미지 우측 여백
$margin_bottom = 5; // 이미지 아래쪽 여백
$height = $img_height+$margin_bottom;
$line_mod=1;
$box_height = (int)$line_mod * (int)$height;

?>

<table width="100%" cellpadding="0" cellspacing="0" border="0">
<?php /*
<tr>
    <td><img src='<?php echo $latest_skin_path; ?>/img/latest_t01.gif'></td>
    <td background='<?php echo $latest_skin_path; ?>/img/bg_latest.gif'>&nbsp;&nbsp;<strong><a href='<?php echo $g4[bbs_path]; ?>/board.php?bo_table=<?php echo $bo_table; ?>'><?php echo $board[bo_subject]; ?></a></strong></td>
    <td background='<?php echo $latest_skin_path; ?>/img/bg_latest.gif'><a href='<?php echo $g4[bbs_path]; ?>/board.php?bo_table=<?php echo $bo_table; ?>'><img src='<?php echo $latest_skin_path; ?>/img/more.gif' border=0></a></td>
    <td><img src='<?php echo $latest_skin_path; ?>/img/latest_t02.gif'></td>
</tr>
*/?>

<?php if (count($list) == 0) { ?>
  <tr><td align="center" height="50">게시물이 없습니다.</td></tr>
<?php } else { ?>
  <tr>
    <td style='padding-left:0px; padding-right:0px; padding-top:0px; padding-bottom:0px;'>
      <script type="text/javascript">
      <!--
        var roll_height_<?php echo $uni; ?> = <?php echo $box_height; ?>;
        var total_area_<?php echo $uni; ?> = 0;
        var wait_flag_<?php echo $uni; ?> = true;

        var bMouseOver_<?php echo $uni; ?> = 1;
        var roll_speed_<?php echo $uni; ?> = 1;
        var waitingtime_<?php echo $uni; ?> = 3000;
        var s_tmp_<?php echo $uni; ?> = 0;
        var s_amount_<?php echo $uni; ?> = <?php echo (int)$height; ?>;
        var roll_text_<?php echo $uni; ?> = new Array();
        var startPanel_<?php echo $uni; ?> = 0;
        var n_panel_<?php echo $uni; ?> = 0;
        var i_<?php echo $uni; ?> = 0;

        function start_roll_<?php echo $uni; ?>()
        {
          i_<?php echo $uni; ?> = 0;
          for (i_<?php echo $uni; ?> in roll_text_<?php echo $uni; ?>)
            n_panel_<?php echo $uni; ?>++;

          n_panel_<?php echo $uni; ?> = n_panel_<?php echo $uni; ?> -1 ;
          startPanel_<?php echo $uni; ?> = Math.round(Math.random()*n_panel_<?php echo $uni; ?>);
          if(startPanel_<?php echo $uni; ?> == 0) {
            i_<?php echo $uni; ?> = 0;
            for (i_<?php echo $uni; ?> in roll_text_<?php echo $uni; ?>)
              insert_area_<?php echo $uni; ?>(total_area_<?php echo $uni; ?>, total_area_<?php echo $uni; ?>++);
          } else if(startPanel_<?php echo $uni; ?> == n_panel_<?php echo $uni; ?>) {
            insert_area_<?php echo $uni; ?>(startPanel_<?php echo $uni; ?>, total_area_<?php echo $uni; ?>);
            total_area_<?php echo $uni; ?>++;
            for (i_<?php echo $uni; ?>=0; i_<?php echo $uni; ?><startPanel_<?php echo $uni; ?>; i_<?php echo $uni; ?>++) {
              insert_area_<?php echo $uni; ?>(i_<?php echo $uni; ?>, total_area_<?php echo $uni; ?>);
              total_area_<?php echo $uni; ?>++;
            }
          } else if((startPanel_<?php echo $uni; ?> > 0) || (startPanel_<?php echo $uni; ?> < n_panel_<?php echo $uni; ?>)) {
            insert_area_<?php echo $uni; ?>(startPanel_<?php echo $uni; ?>, total_area_<?php echo $uni; ?>);
            total_area_<?php echo $uni; ?>++;
            for (i_<?php echo $uni; ?>=startPanel_<?php echo $uni; ?>+1; i_<?php echo $uni; ?><=n_panel_<?php echo $uni; ?>; i_<?php echo $uni; ?>++) {
              insert_area_<?php echo $uni; ?>(i_<?php echo $uni; ?>, total_area_<?php echo $uni; ?>);
              total_area_<?php echo $uni; ?>++;
            }
            for (i_<?php echo $uni; ?>=0; i_<?php echo $uni; ?><startPanel_<?php echo $uni; ?>; i_<?php echo $uni; ?>++) {
              insert_area_<?php echo $uni; ?>(i_<?php echo $uni; ?>, total_area_<?php echo $uni; ?>);
              total_area_<?php echo $uni; ?>++;
            }
          }
     
          if ( navigator.appName == "Microsoft Internet Explorer" ) {
            if ( navigator.appVersion.indexOf ( "MSIE 4" ) > -1 )
            return ;
          }
          window.setTimeout("rolling_<?php echo $uni; ?>()",waitingtime_<?php echo $uni; ?>);
        }

        function rolling_<?php echo $uni; ?>()
        {
          if (bMouseOver_<?php echo $uni; ?> && wait_flag_<?php echo $uni; ?>) {
            for (i_<?php echo $uni; ?>=0;i_<?php echo $uni; ?><total_area_<?php echo $uni; ?>;i_<?php echo $uni; ?>++) {
              tmp_<?php echo $uni; ?> = document.getElementById('scroll_area_<?php echo $uni; ?>'+i_<?php echo $uni; ?>).style;
              tmp_<?php echo $uni; ?>.top = parseInt(tmp_<?php echo $uni; ?>.top)-roll_speed_<?php echo $uni; ?>;

              if (parseInt(tmp_<?php echo $uni; ?>.top) <= -roll_height_<?php echo $uni; ?>) {
                tmp_<?php echo $uni; ?>.top = roll_height_<?php echo $uni; ?>*(total_area_<?php echo $uni; ?>-1);
              }

              if (s_tmp_<?php echo $uni; ?>++ > (s_amount_<?php echo $uni; ?>-1)*roll_text_<?php echo $uni; ?>.length) {
                wait_flag_<?php echo $uni; ?>=false;
                window.setTimeout("wait_flag_<?php echo $uni; ?>=true;s_tmp_<?php echo $uni; ?>=0;",waitingtime_<?php echo $uni; ?>);
              }
            }
          }
          window.setTimeout("rolling_<?php echo $uni; ?>()", 1);
        }

        function insert_area_<?php echo $uni; ?>(idx_<?php echo $uni; ?>, n_<?php echo $uni; ?>)
        {
          document.write('<div style="left: 0px; width: 100%; position: absolute; top: '+(roll_height_<?php echo $uni; ?>*n_<?php echo $uni; ?>)+'px" id="scroll_area_<?php echo $uni; ?>'+n_<?php echo $uni; ?>+'">\n'+roll_text_<?php echo $uni; ?>[idx_<?php echo $uni; ?>]+'\n</div>\n');
        }

        <?php
        unset($roll_text);
        for ($i=0; $i<count($list); $i++) {

          $http = explode("://", $list[$i][wr_link1]);
          if (($http[0] != "http") && ($http[0] != "ftp")) {
            $link_01 = "http://" . $list[$i][wr_link1];
          }else{
            $link_01 = $list[$i][wr_link1];
          }

          $img = "<img src=\"$latest_skin_path/img/noimage.gif\" border=0 heigth=\"$img_height\" width=\"$img_width\" title=\"이미지 없음\" alt=\"이미지 없음\" />";

          $file = $list[$i][file][0][path] ."/". $list[$i][file][0][file];
          if($file){
            $img = "<img src=\"$file\" style=\"border:0px solid #efefef;margin-right:".$margin_right."px;\" border=0 height=\"$img_height\" width=\"$img_width\" alt=\"\" />";
          }

          $k = (int)($i / $td_mod);

          //$roll_text[$k] .= "<div style=\"height:{$height}px; padding-top:0px;\">";

          if ($list[$i][wr_link1]) {
            $roll_text[$k] .= "<a href=\"{$link_01}\" target=\"_blank\">";
            //$roll_text[$k] .= "<a href=\"{$link_01}\" target=_blank>";
            $roll_text[$k] .= $img;
            $roll_text[$k] .= "</a>";
      } else {
            $roll_text[$k] .= $img;
      }
          //$roll_text[$k] .= "</div>";
        }

        for ($i=0; $i<=$k; $i++) {
          echo "roll_text_{$uni}[$i] = '{$roll_text[$i]}';\n";
        }
        ?>
      //-->
      </script>

      <div style="left: 0px; width: 100%; position: relative; top: 0px; height: <?php echo $box_height*$tr_mod; ?>px; overflow:hidden;" onmouseover="bMouseOver_<?php echo $uni; ?>=0" onmouseout="bMouseOver_<?php echo $uni; ?>=1" id="latest_scroll_<?php echo $uni; ?>">
        <script type='text/javascript'>
        <!--
          var no_script_flag_<?php echo $uni; ?> = false ;
          if ( navigator.appName == "Microsoft Internet Explorer" ) {
            if ( navigator.appVersion.indexOf ( "MSIE 4" ) > -1 ) {
              document.write ( roll_text_<?php echo $uni; ?>[0] ) ;
              no_script_flag_<?php echo $uni; ?> = true ;
            }
          }
          if ( no_script_flag_<?php echo $uni;?> == false )
            start_roll_<?php echo $uni; ?>();
        //-->
        </script>
      </div>
    <?php } ?>
    </td>
  </tr>
</table>
*******************************
  • 복사

댓글 전체

© SIRSOFT
현재 페이지 제일 처음으로