Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
tianyazhichiC
algorithm-visualizer
提交
b3d4647b
A
algorithm-visualizer
项目概览
tianyazhichiC
/
algorithm-visualizer
与 Fork 源项目一致
从无法访问的项目Fork
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
A
algorithm-visualizer
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
b3d4647b
编写于
5月 26, 2016
作者:
J
Jason Park
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
add CREDIT.md
上级
94e2aeae
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
54 addition
and
46 deletion
+54
-46
js/script.js
js/script.js
+54
-46
未找到文件。
js/script.js
浏览文件 @
b3d4647b
...
...
@@ -151,59 +151,63 @@ var showAlgorithm = function (category, algorithm) {
dataEditor
.
setValue
(
''
);
codeEditor
.
setValue
(
''
);
};
var
showFiles
=
function
(
category
,
algorithm
,
files
)
{
var
maxButtonCount
=
3
,
fileNames
=
Object
.
keys
(
files
),
lastFile
=
-
1
;
var
init
=
false
;
var
currentFileBarButtons
=
[];
function
addFileButton
(
file
,
explanation
)
{
var
$file
=
$
(
'
<button>
'
).
append
(
file
).
click
(
function
()
{
loadFile
(
category
,
algorithm
,
file
,
explanation
);
$
(
'
.files_bar > button
'
).
removeClass
(
'
active
'
);
$
(
this
).
addClass
(
'
active
'
);
});
$
(
'
.files_bar
'
).
append
(
$file
);
currentFileBarButtons
.
push
(
$file
);
var
showFiles
=
function
(
category
,
algorithm
,
files
)
{
var
maxButtonCount
=
3
,
fileNames
=
Object
.
keys
(
files
),
lastFile
=
-
1
;
var
init
=
false
;
var
currentFileBarButtons
=
[];
function
addFileButton
(
file
,
explanation
)
{
var
$file
=
$
(
'
<button>
'
).
append
(
file
).
click
(
function
()
{
loadFile
(
category
,
algorithm
,
file
,
explanation
);
$
(
'
.files_bar > button
'
).
removeClass
(
'
active
'
);
$
(
this
).
addClass
(
'
active
'
);
});
$
(
'
.files_bar
'
).
append
(
$file
);
currentFileBarButtons
.
push
(
$file
);
if
(
!
init
)
{
init
=
true
;
$file
.
click
();
}
if
(
!
init
)
{
init
=
true
;
$file
.
click
();
}
}
function
clearFileBar
()
{
currentFileBarButtons
.
forEach
(
function
(
f
)
{
f
.
remove
();
});
}
function
clearFileBar
()
{
currentFileBarButtons
.
forEach
(
function
(
f
)
{
f
.
remove
();
});
}
$
(
'
.files_bar
'
).
empty
();
$
(
'
.files_bar
'
).
empty
();
var
$nextButton
=
$
(
'
<button>
'
).
append
(
'
<b>></b>
'
).
addClass
(
'
files_bar_right_button
'
).
click
(
function
()
{
if
(
lastFile
>=
fileNames
.
length
)
{
return
;
}
clearFileBar
();
//first, remove the previously visible buttons
var
$nextButton
=
$
(
'
<button>
'
).
append
(
'
<b>></b>
'
).
addClass
(
'
files_bar_right_button
'
).
click
(
function
()
{
if
(
lastFile
>=
fileNames
.
length
)
{
return
;
}
clearFileBar
();
//first, remove the previously visible buttons
init
=
false
;
fileNames
.
slice
(
lastFile
+
1
,
lastFile
+
1
+
maxButtonCount
).
forEach
(
function
(
file
)
{
file
&&
addFileButton
(
file
,
files
[
file
]);
});
lastFile
+=
maxButtonCount
;
init
=
false
;
fileNames
.
slice
(
lastFile
+
1
,
lastFile
+
1
+
maxButtonCount
).
forEach
(
function
(
file
)
{
file
&&
addFileButton
(
file
,
files
[
file
]);
});
$
(
'
.files_bar
'
).
append
(
$nextButton
);
lastFile
+=
maxButtonCount
;
});
$
(
'
.files_bar
'
).
append
(
$nextButton
);
var
$prevButton
=
$
(
'
<button>
'
).
append
(
'
<b><</b>
'
).
addClass
(
'
files_bar_left_button
'
).
click
(
function
()
{
if
(
lastFile
===
maxButtonCount
-
1
)
{
return
;
}
var
$prevButton
=
$
(
'
<button>
'
).
append
(
'
<b><</b>
'
).
addClass
(
'
files_bar_left_button
'
).
click
(
function
()
{
if
(
lastFile
===
maxButtonCount
-
1
)
{
return
;
}
clearFileBar
();
//first, remove the previously visible buttons
lastFile
-=
maxButtonCount
;
init
=
false
;
fileNames
.
slice
(
lastFile
+
1
-
maxButtonCount
,
lastFile
+
1
).
forEach
(
function
(
file
)
{
addFileButton
(
file
,
files
[
file
]);
});
clearFileBar
();
//first, remove the previously visible buttons
lastFile
-=
maxButtonCount
;
init
=
false
;
fileNames
.
slice
(
lastFile
+
1
-
maxButtonCount
,
lastFile
+
1
).
forEach
(
function
(
file
)
{
addFileButton
(
file
,
files
[
file
]);
});
$
(
'
.files_bar
'
).
append
(
$prevButton
);
});
$
(
'
.files_bar
'
).
append
(
$prevButton
);
$nextButton
.
click
();
//initialize the file bar with the First 3 Buttons
$nextButton
.
click
();
//initialize the file bar with the First 3 Buttons
};
var
loadAlgorithm
=
function
(
category
,
algorithm
)
{
if
(
checkLoading
())
return
;
...
...
@@ -224,11 +228,11 @@ var anyOpened = false;
$
.
getJSON
(
'
./algorithm/category.json
'
,
function
(
data
)
{
list
=
data
;
for
(
var
category
in
list
)
{
(
function
(
category
)
{
(
function
(
category
)
{
var
$category
=
$
(
'
<button class="category">
'
)
.
append
(
'
<i class="fa fa-fw fa-caret-down">
'
)
.
append
(
list
[
category
].
name
);
$category
.
click
(
function
()
{
$category
.
click
(
function
()
{
$
(
'
[data-category="
'
+
category
+
'
"]
'
).
toggleClass
(
'
collapse
'
);
$
(
this
).
find
(
'
i.fa
'
).
toggleClass
(
'
fa-caret-down fa-caret-up
'
);
});
...
...
@@ -297,6 +301,9 @@ var showInfoToast = function (info) {
},
3000
);
};
$
(
'
#shared
'
).
mouseup
(
function
()
{
$
(
this
).
select
();
});
$
(
'
#btn_share
'
).
click
(
function
()
{
var
$icon
=
$
(
this
).
find
(
'
.fa-share
'
);
$icon
.
addClass
(
'
fa-spin fa-spin-faster
'
);
...
...
@@ -447,7 +454,7 @@ $module_container.on('DOMMouseScroll mousewheel', '.module_wrapper', function (e
// Share scratch paper
var
getParameterByName
=
function
(
name
)
{
var
getParameterByName
=
function
(
name
)
{
var
url
=
window
.
location
.
href
;
name
=
name
.
replace
(
/
[\[\]]
/g
,
"
\\
$&
"
);
var
regex
=
new
RegExp
(
"
[?&]
"
+
name
+
"
(=([^&#]*)|&|#|$)
"
),
...
...
@@ -481,7 +488,8 @@ var loadScratchPaper = function (gistID) {
var
dir
=
getFileDir
(
category
,
algorithm
,
'
scratch_paper
'
);
cachedFile
[
dir
]
=
{
data
:
data
.
files
[
'
data.js
'
].
content
,
code
:
data
.
files
[
'
code.js
'
].
content
code
:
data
.
files
[
'
code.js
'
].
content
,
'
CREDIT.md
'
:
'
Shared by an anonymous user from http://parkjs814.github.io/AlgorithmVisualizer
'
};
loadAlgorithm
(
category
,
algorithm
);
});
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录