餃子を食べるとき、何をつけますか?

拾ったソースを改造しようとしているのですが
知識がない為うまくいきません。

divの中のsample1~10を横に並べて、改行なしの横スクロールにしたいです。
今は縦スクロールです。
どこを直せばいいのか教えてくださいm(_ _)m

――――――――――――――――――
<SCRIPT language="JavaScript">
<!--
var SmoothScroll = {};
SmoothScroll = {
targetScrollTop : 0,
dist : 0,
timer : 0,
count : 0,
parentid : 0,
lastDist : 0,
//speedStore : [],
options : {},
defaultOptions : {
time : 1*1000,
unit : 50
},
scrollTo : function( element, parent, options ){
this.options.time = this.defaultOptions.time;
this.options.unit = this.defaultOptions.unit;
if( options ){
this.options.time = ( options.time ) ? options.time : this.options.time;
this.options.unit = ( options.unit ) ? options.unit : this.options.unit;
}
clearInterval( this.timer );
this.parentid = parent;

this.scrollTopMax = this.$(parent).scrollHeight - this.$(parent).offsetHeight + parseInt(this.$(parent).style.borderTopWidth) + parseInt(this.$(parent).style.borderBottomWidth);

if( navigator.userAgent.match( "MSIE" ) ){
this.targetScrollTop = ( element ) ? this.$(element).offsetTop : 0;
}else{
var targetOffsetTop = ( element ) ? this.$(element).offsetTop : this.$(parent).offsetTop;
this.targetScrollTop = targetOffsetTop - this.$(parent).offsetTop;
}
this.targetScrollTop = ( this.targetScrollTop > this.scrollTopMax ) ? this.scrollTopMax : this.targetScrollTop;

this.dist = this.targetScrollTop - this.$(parent).scrollTop;
this.lastDist = 0;
this.timer = setInterval('SmoothScroll.update()', this.options.unit );
this.count = 0;
//this.speedStore = [];
this.update();
},
update : function(){
var dist = this.targetScrollTop - this.$(this.parentid).scrollTop;
var speed = 2 * dist * this.options.unit / ( this.options.time - this.options.unit * this.count );
//this.speedStore.push( speed );
speed = ( speed > 0 ) ? Math.ceil( speed ) : Math.floor( speed );
if( Math.abs(dist) <= Math.abs(speed) ){
// got there
clearInterval( this.timer );
this.$(this.parentid).scrollTop = this.targetScrollTop;
return;
}else if( this.lastDist == dist ){
// stuck
clearInterval( this.timer );
this.$(this.parentid).scrollTop = this.targetScrollTop;
return;
}
var scrollTop = this.$(this.parentid).scrollTop + speed;
this.$(this.parentid).scrollTop = scrollTop;
this.lastDist = dist;
this.count++;
if( this.count == this.options.time / this.options.unit ){
// timeout
clearInterval( this.timer );
this.$(this.parentid).scrollTop = this.targetScrollTop;
}
},
$ : function(id) {
return document.getElementById(id);
}
}

-->
</script>
<div id="scrolltop" style="width: 750px; height: 200px; overflow-x: scroll; overflow-y: scroll; border: 1px black solid;">
<a href="sample1">1</a>
<a href="sample2">2</a>
<a href="sample3">3</a>
<a href="sample4">4</a>
<span id="middle" style="color: red">
<a href="sample5">5</a>
</span>
<a href="sample6">6</a>
<a href="sample7">7</a>
<a href="sample8">8</a>
<a href="sample9">9</a>
<span id="bottom" style="color: blue">
<a href="sample10">10</a>
</span><br />
</div>
<input type="button" value="go to top" onclick="SmoothScroll.scrollTo(0,'scrolltop');"/>
<input type="button" value="go to middle" onclick="SmoothScroll.scrollTo('middle','scrolltop');"/>
<input type="button" value="go to bottom" onclick="SmoothScroll.scrollTo('bottom','scrolltop');"/>

A 回答 (3件)

>どうせ拾ったソースなら捨ててしまって



う~~~ん。めいげんかも^^;
    • good
    • 0

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">


<title></title>
<style type="text/css">
a { padding:40px; }
</style>
<div id="scrollLeft" style="width: 750px; height: 200px; overflow-x: scroll; overflow-y: scroll; border: 1px black solid;">
<div style="width: 1000px; height: 200px;">
<a href="sample1">1</a>
<a href="sample2">2</a>
<a href="sample3">3</a>
<a href="sample4">4</a>
<span id="middle" style="color: red">
<a href="sample5">5</a>
</span>
<a href="sample6">6</a>
<a href="sample7">7</a>
<a href="sample8">8</a>
<a href="sample9">9</a>
<span id="bottom" style="color: blue">
<a href="sample10">10</a>
</span>
</div>
</div>
<input type="button" value="go to top" onclick="SmoothScroll.scrollTo(0,'scrollLeft');"/>
<input type="button" value="go to middle" onclick="SmoothScroll.scrollTo('middle','scrollLeft');"/>
<input type="button" value="go to bottom" onclick="SmoothScroll.scrollTo('bottom','scrollLeft');"/>

<script type="text/javascript">


var SmoothScroll = {
 targetScrollLeft : 0,
 dist : 0,
 timer : 0,
 count : 0,
 parentid : 0,
 lastDist : 0,
 //speedStore : [],
 options : {},
 defaultOptions : {
  time : 1*1000,
  unit : 50
 },
 scrollTo : function( element, parent, options ){
  this.options.time = this.defaultOptions.time;
  this.options.unit = this.defaultOptions.unit;
  if( options ){
   this.options.time = ( options.time ) ? options.time : this.options.time;
   this.options.unit = ( options.unit ) ? options.unit : this.options.unit;
  }
  clearInterval( this.timer );
  this.parentid = parent;

  this.scrollLeftMax = this.$(parent).scrollWidth - this.$(parent).offsetWidth + parseInt(this.$(parent).style.borderLeftWidth) + parseInt(this.$(parent).style.borderBottomWidth);

  if( navigator.userAgent.match( "MSIE" ) ){
   this.targetScrollLeft = ( element ) ? this.$(element).offsetLeft : 0;
  }else{
   var targetOffsetLeft = ( element ) ? this.$(element).offsetLeft : this.$(parent).offsetLeft;
   this.targetScrollLeft = targetOffsetLeft - this.$(parent).offsetLeft;
  }
  this.targetScrollLeft = ( this.targetScrollLeft > this.scrollLeftMax ) ? this.scrollLeftMax : this.targetScrollLeft;

  this.dist = this.targetScrollLeft - this.$(parent).scrollLeft;
  this.lastDist = 0;
  this.timer = setInterval('SmoothScroll.update()', this.options.unit );
  this.count = 0;
  //this.speedStore = [];
  this.update();
 },
 update : function(){
  var dist = this.targetScrollLeft - this.$(this.parentid).scrollLeft;
  var speed = 2 * dist * this.options.unit / ( this.options.time - this.options.unit * this.count );
  //this.speedStore.push( speed );
  speed = ( speed > 0 ) ? Math.ceil( speed ) : Math.floor( speed );
  if( Math.abs(dist) <= Math.abs(speed) ){
   // got there
   clearInterval( this.timer );
   this.$(this.parentid).scrollLeft = this.targetScrollLeft;
   return;
  }else if( this.lastDist == dist ){
   // stuck
   clearInterval( this.timer );
   this.$(this.parentid).scrollLeft = this.targetScrollLeft;
   return;
  }
  var scrollLeft = this.$(this.parentid).scrollLeft + speed;
  this.$(this.parentid).scrollLeft = scrollLeft;
  this.lastDist = dist;
  this.count++;
  if( this.count == this.options.time / this.options.unit ){
   // timeout
   clearInterval( this.timer );
   this.$(this.parentid).scrollLeft = this.targetScrollLeft;
  }
 },
 $ : function(id) {
  return document.getElementById(id);
 }
}
</script>
Top というのは、Leftに
Height というのは Width に
id="scrollLeft"のなかにdivようそをつくって
みたいな・・・?
でもせんたーはおかしい
あとはたにんまかせ?^^;
ばぶぅ~

この回答への補足

ありがとうございます!
実はこれ会社のページを作ろうとしているのですが、
急遽別の作業を言い付けられて目が回っています…(@Д@)
時間はかかりそうですがいただいた意見を元に頑張ってみます。

補足日時:2009/09/18 16:25
    • good
    • 0

どうせ拾ったソースなら捨ててしまって、別のを使ったらいかがでしょう。


例えば、なめらかスクロール「tinyscrol」
http://pub.ne.jp/tsuchan/?entry_id=317594

この回答への補足

なるほど。
ほぼ1日探し求めてようやく見付かったそれらしいのがコレだったもので…
ありがとうございます、さっそく見てみます。

補足日時:2009/09/18 15:19
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


おすすめ情報