DatesliderとPrototype.js

| コメント(0)

Datasliderという日付をドラッグで選択可能なフルjavascriptライブラリがあります。
http://www.ajaxorized.com/

datasliderプロジェクトのページはこちら
http://code.google.com/p/dateslider/

いまのところだれもコメントはありませんが、IE7において、スクリプトエラーがでまくることがあります。

左のスライドを右、もしくは、右のスライドを左に移動させた時に、両方のスライドバーが重なったときにエラーが表示されます。これは、どうやら、スタイルシートにたいして、width:-1pxといったように、マイナスの数字をあたえているのが原因のようです。これは、エラーとなりますが、prototype.jsでは、これを感知してません。

そのため、dataslider.jsでマイナスがセットされないように修正して対応しました。

dateslider.jsの210行あたりから139行目あたり(_rightDragと_leftDrag) 

_rightDrag : function () {
l_panelLength = $('righthandle').offsetLeft - $('lefthandle').offsetLeft - 5;
/*$('shiftpanel').setStyle({width : (l_panelLength+2*sliderReference.sliderBarMargin)+'px'});*/
if((l_panelLength+2*sliderReference.sliderBarMargin) >= 0){
$('shiftpanel').setStyle({width : (l_panelLength+2*sliderReference.sliderBarMargin)+'px'});
}else{
$('shiftpanel').setStyle({width : '0px'});
}
sliderReference._setDates();
},
_leftDrag : function() {
l_panelLength = $('righthandle').offsetLeft - $('lefthandle').offsetLeft - 4;
/*$('shiftpanel').setStyle({left: ($('lefthandle').offsetLeft+4)+'px', width : l_panelLength+'px'});*/
if(($('lefthandle').offsetLeft+4) >= 0 ){
$('shiftpanel').setStyle({left: ($('lefthandle').offsetLeft+4)+'px', width : l_panelLength+'px'});
}else{
$('shiftpanel').setStyle({left: '0px', width : l_panelLength+'px'});
}
sliderReference._setDates();
},

コメントする

このブログ記事について

このページは、utが2009年5月 7日 12:04に書いたブログ記事です。

ひとつ前のブログ記事は「IEでjavascriptのエラーをデバッグする方法」です。

次のブログ記事は「silverlightを使うときのIISの設定 apacheでもいけるとおもいます。」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

ウェブページ

Powered by Movable Type 5.04

にほんブログ村

にほんブログ村 IT技術ブログへ
にほんブログ村