ホームページ ウェブフロントエンド jsチュートリアル ドラッグ可能な列幅のデモ例 table_javascript スキル

ドラッグ可能な列幅のデモ例 table_javascript スキル

May 16, 2016 pm 05:47 PM
引っ張る

コードをコピー コードは次のとおりです:







































































序号 操作 标题 执行人 开始时间 结束时间 天数
1 编辑 任务标题:阿斯卡是大家啊 Firefox 2012-07-15 2012-08-15 32
2 编辑 任务标题:阿斯卡是大家啊 Firefox 2012-07-15 2012-08-15 32
3 编辑 任务标题:阿斯卡是大家啊 Firefox 2012-07-15 2012-08-15 32
4 编辑 任务标题:阿斯卡是大家啊 Firefox 2012-07-15 2012-08-15 32
5 编辑 任务标题:阿斯卡是大家啊 Firefox 2012-07-15 2012-08-15 32




(function(){ //テーブルヘッダーを修正、一下実行类を封入可能
var leftScrollPanel = $("#left-scroll-panel");
var ganntBody = $("#gannt_grid> ;tbody");
var fixedThead = leftScrollPanel.prev(".fixed-header-tb");
if(!fixedThead.length){
fixedThead = $('
');
fixedThead.append(ganntBody.prev());
leftScrollPanel.before(fixedThead);
}else{
/ /gannt ボディの再描画時にテーブル ヘッドを再度作成しません。
//これは関数 render で作成されないためです。
ganntBody.prev().remove();
var tds = ganntBody. find("tr:first>td");
var ths = fixThead.find("th");
$.each(tds,function(index,td){ //jq width() または css('width') には 1px の視差がある可能性があります。attr width
thWidth = ths.eq(index).attr("width");
(thWidth!=unknown); && $(td).attr("width",thWidth);
});
(function(){//テーブルヘッダーのサイズ変更
var sideOffset = {
left:null,
right:null,
td:null,
tdLocked:null,
tdLeft:null,
tdRight:null
};
var pos = {
resizeTime:0,
beginPos:0
}; .fixed-header-tb").find("tr:first");
var headCellTagName = "th";
var bodyHead = $("#gannt_grid>tbody").find("tr:first") ");
var minInterVal = 0;
var minWidth = 30;
var borderBeside = 5;
var notResizeCells = [0,1,6];
var freeCells = [2] ;
varforceSize = false;
var resizing = false;
var frag = false; ;
varindex = o.td.index();
if($.inArray(index,notResizeCells)>-1){
frag = true; ==0||$.inArray(index-1,notResizeCells)>-1)&&o.left<=borderBeside){
frag = true;
}else if((index==o.td.兄弟().length||$.inArray(index 1,notResizeCells)>-1)&&o.right<=borderBeside){
frag = true;
}else if(o.left>borderBeside&&o.right>) ;borderBeside){
frag = true;
}
フラグを返します。
};
var stopResize = function(){
if(!resizing){return ;}
resizing = false;
resizeAllow = false;
sideOffset = {
left:null、
right:null、
td:null、
tdLocked:null、
tdLeft:null、
tdRight:null
};
};
var isFreeCell = function(td){
return ForceSize==false && $.inArray(td.index(),freeCells)!=-1;
};
tableHead.bind({
mousemove:function(e){
var th = $(e.target).closest(headCellTagName);
if(!th.length){
return;
}
if(!resizing){
sideOffset.td = th;
sideOffset.left = e.pageX - th.offset().right = th.width()-(e.pageX-th.offset().left);
if(forbiddenResize()){
resizeAllow = false;
sideOffset.td.css("cursor", "デフォルト");
}else{
sideOffset.td.css("cursor","e-resize");
pos.resizeTime = new Date()* 1;
pos.beginPos = e.pageX;
return;
}
th = sideOffset.tdLocked; 🎜>if(new Date()-pos.resizeTimereturn;
}else{
pos.resizeTime = new Date()*1; = (e.pageX-pos.beginPos);
if(!offset){
return;
}else{
pos.beginPos = e.pageX; leftWidth = sideOffset.tdLeft.width();
var rightWidth = sideOffset.tdRight.width();
if(offset<&leftWidth==minWidth){
}else if(offset>) ;0&&rightWidth==minWidth){
return;
}
var fixedLWidth,fixedRWidth;
if(leftWidth-Math.abs(offset)fixedLWidth = minWidth;
fixedRWidth = rightWidth - (minWidth-leftWidth);
}else if(rightWidth-offset0){
fixedRWidth = minWidth;
fixedLWidth = leftWidth - (minWidth-rightWidth);
}else{
fixedLWidth = leftWidth オフセット;
fixedRWidth = rightWidth-offset;
}
varAdjustCells = [
{cell:sideOffset.tdLeft,width:fixedLWidth},
{cell:sideOffset.tdRight,width:fixedRWidth}
];
if(offsetadjustCells =AdjustCells.reverse();
}
var inOneTable = bodyHead.parents("table:first").get(0)==tableHead.parents("table:first").get(0);
$.each(adjustCells,function(i,cellConf){
if(isFreeCell(cellConf.cell)){return;}
cellConf.cell.attr("width",cellConf.width);
if(!inOneTable){
bodyHead.children().eq(cellConf.cell.index()).attr("width",cellConf.width);
}
});
},
mousedown:function(){
if(!resizeAllow){
return;
}
sideOffset.tdLocked = SideOffset.td;
if(sideOffset.leftsideOffset.tdRight = sideOffset.td;
sideOffset.tdLeft = sideOffset.td.prev();
}else{
sideOffset.tdRight = sideOffset.td.next();
sideOffset.tdLeft = SideOffset.td;
}
サイズ変更 = true;
false を返します。
}
});
$(document).bind("mouseup",stopResize);
})();



このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

JavaScript を使用して画像のドラッグとズーム機能を実装するにはどうすればよいですか? JavaScript を使用して画像のドラッグとズーム機能を実装するにはどうすればよいですか? Oct 27, 2023 am 09:39 AM

JavaScript を使用して画像のドラッグとズーム機能を実装するにはどうすればよいですか?最新の Web 開発では、画像のドラッグとズームは一般的な要件です。 JavaScript を使用すると、画像にドラッグやズーム機能を簡単に追加して、より良いユーザー エクスペリエンスを提供できます。この記事では、JavaScriptを使用してこの機能を実装する方法を、具体的なコード例とともに紹介します。 HTML 構造 まず、画像を表示したり追加したりするための基本的な HTML 構造が必要です。

Vue でのドラッグ アンド ドロップの選択と配置に関するヒントとベスト プラクティス Vue でのドラッグ アンド ドロップの選択と配置に関するヒントとベスト プラクティス Jun 25, 2023 am 10:13 AM

Vue は、シングル ページ アプリケーション (SPA) の構築に適した人気のある JavaScript フレームワークです。命令とコンポーネントを通じてドラッグ アンド ドロップの選択と配置機能をサポートし、ユーザーに優れたインタラクティブなエクスペリエンスを提供します。この記事では、Vue でのドラッグ アンド ドロップによる選択と配置のテクニックとベスト プラクティスを紹介します。ドラッグ命令 Vue は、ドラッグ効果を簡単に実現できる v ドラッグ可能な命令を提供します。このコマンドは任意の要素に適用でき、ドラッグ スタイルをカスタマイズできます。

Vue の実践スキル: v-on 命令を使用してマウス ドラッグ イベントを処理する Vue の実践スキル: v-on 命令を使用してマウス ドラッグ イベントを処理する Sep 15, 2023 am 08:24 AM

Vue の実践スキル: v-on 命令を使用してマウス ドラッグ イベントを処理する はじめに: Vue.js は人気のある JavaScript フレームワークであり、そのシンプルさ、使いやすさ、柔軟性により、多くの開発者にとって最初の選択肢となっています。 Vue アプリケーション開発では、ユーザー インタラクション イベントの処理は必須のスキルです。この記事では、Vue の v-on ディレクティブを使用してマウス ドラッグ イベントを処理する方法を紹介し、具体的なコード例を示します。 Vue インスタンスを作成します: まず、HTML ファイルに Vue.js ライブラリ ファイルを導入します: &

Vue を使用してドラッグ アンド ドロップの並べ替え効果を実装する方法 Vue を使用してドラッグ アンド ドロップの並べ替え効果を実装する方法 Sep 20, 2023 pm 03:01 PM

Vue を使用してドラッグ アンド ドロップの並べ替え効果を実装する方法 Vue.js は、高度にインタラクティブなフロントエンド アプリケーションの構築に役立つ人気のある JavaScript フレームワークです。 Vue では、ドラッグ アンド ドロップの並べ替え効果を簡単に実装でき、ユーザーは要素をドラッグしてデータを並べ替えることができます。この記事では、Vue を使用してドラッグ アンド ドロップの並べ替え効果を実装する方法を紹介し、具体的なコード例を示します。まず、Vue のインスタンスを作成し、並べ替えるデータを格納する配列を定義する必要があります。この例では、

Vue でドラッグ アンド ドロップ要素をコピーして移動するにはどうすればよいですか? Vue でドラッグ アンド ドロップ要素をコピーして移動するにはどうすればよいですか? Jun 25, 2023 am 08:35 AM

Vue は、便利なドラッグ アンド ドロップ機能を提供する人気の JavaScript フレームワークで、要素を簡単にコピーしたり移動したりできます。次に、Vue でドラッグ アンド ドロップ要素をコピーおよび移動する方法を見てみましょう。 1. ドラッグ アンド ドロップ要素の基本的な実装 Vue でドラッグ アンド ドロップ要素をコピーおよび移動するには、まず要素の基本的なドラッグ アンド ドロップ機能を実装する必要があります。具体的な実装方法は以下の通りです。 ドラッグする必要がある要素をテンプレートに追加します: &lt;divclass="drag-elem"

Layui を使用して画像のドラッグとズーム効果を実現する方法 Layui を使用して画像のドラッグとズーム効果を実現する方法 Oct 24, 2023 am 09:16 AM

Layui を使用して画像のドラッグとズーム効果を実現する方法 現代の Web デザインでは、画像のインタラクティブな効果は、Web ページの活力とユーザー エクスペリエンスを向上させる重要な手段となっています。その中でも、画像のドラッグとズーム効果は、一般的で人気のあるインタラクション方法の 1 つです。この記事では、Layui フレームワークを使用して画像のドラッグとズーム効果を実現する方法を紹介し、具体的なコード例を示します。 1. Layui フレームワークと関連する依存関係を導入します。まず、Layui フレームワークと関連する依存関係を HTML ファイルに導入する必要があります。これは、次のコード例で導入できます。

Vue ドキュメントでのドラッグ アンド ドロップの並べ替え機能の使用方法と効果の方法 Vue ドキュメントでのドラッグ アンド ドロップの並べ替え機能の使用方法と効果の方法 Jun 20, 2023 am 09:22 AM

Vue は現在最も人気のあるフロントエンド フレームワークの 1 つで、さまざまな Web アプリケーションの開発を便利に行うための豊富な機能とツールを提供します。非常に便利な機能の 1 つはドラッグ アンド ドロップです。これを使用すると、ユーザーはページ上のある場所から別の場所に要素をドラッグできます。 Vue には、ドラッグ アンド ドロップの並べ替え機能など、ドラッグ アンド ドロップ操作の作成と管理を容易にするいくつかの組み込みコマンドと関数が用意されています。この記事では、Vue ドキュメントでのドラッグ アンド ドロップの並べ替え機能の使用方法とその効果を紹介します。ドラッグソート機能とは何ですか?ドラッグソート機能はVです

uniappにドラッグ&ドロップの並べ替え機能を実装する方法 uniappにドラッグ&ドロップの並べ替え機能を実装する方法 Jul 06, 2023 pm 12:31 PM

uniapp にドラッグ アンド ドロップの並べ替え機能を実装する方法 ドラッグ アンド ドロップの並べ替えは、ユーザーが要素をドラッグして順序を変更できる一般的なユーザー インタラクション方法です。 uniapp では、コンポーネント ライブラリといくつかの基本的なドラッグ イベントを使用して、ドラッグ アンド ドロップの並べ替え機能を実装できます。以下では、uniappにドラッグ&ドロップの並べ替え機能を実装する方法を、コード例とともに詳しく紹介します。ステップ 1: 基本的なリスト ページを作成する まず、並べ替える必要がある要素を表示するための基本的なリスト ページを作成する必要があります。使える&

See all articles