js模拟电脑选择多文件夹效果_选区代码

代码很简单,会继续完善。。。
按住鼠标键不动,拖动鼠标,会看到效果

body{padding:100px;}
.fileDiv{float:left;width:100px;height:100px;text-align:center;line-height:100px;font-size:12px;border:1px solid #cccccc;margin-right:10px;margin-bottom:10px;}
.seled{border:1px solid #ff0000;background-color:#D6DFF7;}

(function(){
document.onmousedown = function(){

var selList = [];
var fileNodes = document.getElementsByTagName("div");
for(var i=0; i _l && st > _t && selList[i].offsetLeft

file1

file2

file3

file4

file5

file6

file7

file8

file9

[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]

update:
1. 针对前2个beta版,该版本修复了前两个版本出现的 bug ,
2. 进行了代码的简单封装(由于本人初学js,对js掌握的很浅,因此面向对象的理解很差,封装的不好);
3. 增加了对 Ctrl 和 Shift 键的支持(目前shift键的功能和ctrl键的功能一样,还不能达到仿windows的选区Shift键的功能)。
4. 增加了获取“被选区选中元素”的方法,可以点击按钮“getRegions”看效果。
调用方法:


代码如下:

new RegionSelect({
region:'div.fileDiv',
selectedClass: 'seled'
}).select();

增强效果代码

body{padding-top:50px;padding-left:100px;padding-right:150px;}
.fileDiv{float:left;width:100px;height:100px;text-align:center;line-height:100px;font-size:12px;border:1px solid #cccccc;margin-right:10px;margin-bottom:10px;}
.seled{border:1px solid #ff0000;background-color:#D6DFF7;}

/*--------------------------------- 以下4个方法 摘自网络 ----------------------------------------*/
Array.prototype.remove = function( item ){
for( var i = 0 ; i -1) {

var bits = token.split('#');
var tagName = bits[0];
var id = bits[1];
var element = document.getElementById(id);
if (tagName && element.nodeName.toLowerCase() != tagName) {

return new Array();
}
currentContext = new Array(element);
continue;
}
if (token.indexOf('.') > -1) {

var bits = token.split('.');
var tagName = bits[0];
var className = bits[1];
if (!tagName) {
tagName = '*';
}

var found = new Array;
var foundCount = 0;
for (var h = 0; h -1); };
break;
default :
checkFunction = function(e) { return e.getAttribute(attrName); };
}
currentContext = new Array;
var currentContextIndex = 0;
for (var k = 0; k 0){
var _self = this;
for(var i=0; i t+5 && r > l+5) {
return region;
} else {
return null;
}

}

RegionSelect.prototype.clearSelections = function(regions){
for(var i=0; i

getRegions

file1

file2

file3

file4

file5

file6

file7

file8

file9

file10

file11

file12

file13

file14

file15

file16

file17

file18

file19

file20

file21

file22

file23

file24

file25

file26

file27

file28

file29

file30

file31

file32

file33

file34

file35

file36

file37

file38

file39

file40

file41

file42

file43

file44

file45

file46

file47

file48

file49

file50

file51

file52

file53

file54

file55

file56

file57

file58

file59

file60

getRegions

new RegionSelect({
region:'div.fileDiv',
selectedClass: 'seled'
}).select();

[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]

(0)

相关推荐

  • js 浏览本地文件夹系统示例代码

    复制代码 代码如下: function BrowseFolder(){ try{ var Message = "请选择文件夹"; //选择框提示信息 var Shell = new ActiveXObject( "Shell.Application" ); var Folder = Shell.BrowseForFolder(0,Message,0x0040,0x11);//起始目录为:我的电脑 //var Folder = Shell.BrowseForFolde

  • javascript 系统文件夹文件操作及参数介绍

    前期在.net 下进行系统操作,同样的功能实现起来非常复杂,没想到用javascript竟然如此简单,所以在网上搜索了代码并加以改进. 复制代码 代码如下: function PathList(path) { var fso = new ActiveXObject("Scripting.FileSystemObject"); var fldr = fso.GetFolder(path); var fd = new Enumerator(fldr.SubFolders); for (;

  • JavaScript中使用ActiveXObject操作本地文件夹的方法

    在Windows平台上, js可以调用很多Windows提供的ActivexObject,本文就使用js来实现文档处理, 和使用js编写ActiveX做一个简单介绍. 复制代码 代码如下: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html> <head>  <t

  • js/jq仿window文件夹移动/剪切/复制等操作代码

    window对文件夹的操作主要包括移动/剪切/复制,本篇文章主要用jQuery来实现,下面一起来了解一下把. 1.先看下效果吧! 2.在添加一个index.html <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> <script src="./jquery-1.

  • Node.js查找当前目录下文件夹实例代码

    整理文档,搜刮出Node.js查找当前目录下文件夹实例代码,稍微整理精简一下做下分享. var http = require("http"); var fs = require("fs"); var server = http.createServer(function (req,res) { //不处理收藏夹小图标 if(req.url == "/favicon.ico"){ return; } //files是文件名的数组 表示text这个文

  • js操作IE浏览器弹出浏览文件夹可以返回目录路径

    如图所示: 可以返回目录路径. 操作如下: function BrowseFolder(){ try{ var Message = "请选择文件夹"; //选择框提示信息 var Shell = new ActiveXObject( "Shell.Application" ); var Folder = Shell.BrowseForFolder(0,Message,0x0040,0x11);//起始目录为:我的电脑 //var Folder = Shell.Bro

  • Javascript 文件夹选择框的两种解决方案

    解决方案1: 调用windows 的shell,但会有安全问题. * browseFolder.js * 该文件定义了BrowseFolder()函数,它将提供一个文件夹选择对话框 * 以供用户实现对系统文件夹选择的功能 * 文件夹选择对话框起始目录由 * Shell.BrowseForFolder(WINDOW_HANDLE, Message, OPTIONS, strPath)函数 * 的strPath参数设置 * 例如:0x11--我的电脑 * 0 --桌面 * "c:\\"--

  • JS实现新建文件夹功能

    每天一个JS 小demo之新建文件夹.主要知识点:DOM方法的综合运用 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> <style type="text/css"> body { margin: 0; } header { border-

  • javascript 选择文件夹对话框(web)

    没有办法,实践证明最好的解决办法是自己写一个OCX控件,这样就只要注册一下OCX控件就可以了,同时OCX控件的可扩展性非常大,也就是给vc\delphi这些程序的功能引入到web中,其功能可想而知! 这里不说明OCX开发的过程了,给自己写的OCX控件共享一下,希望能给一些朋友提供帮助. 这个OCX控件中提供了一个getFiles()方法,只要获取控件对象,然后调用getFiles()方法就可以获取对应路径下的所有文件,如下图: 该控件可以选择任意盘符下的任意文件夹,图中最下面的按钮时web中的i

  • js/jq仿window文件夹框选操作插件

    0.先给大家看看效果: 1.创建一个index.html文件 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> <style> ul{list-style: none} li{width:200px;margin:10px;float:left;height: 100

随机推荐