提交 b3d4647b 编写于 作者: J Jason Park

add CREDIT.md

上级 94e2aeae
...@@ -151,59 +151,63 @@ var showAlgorithm = function (category, algorithm) { ...@@ -151,59 +151,63 @@ var showAlgorithm = function (category, algorithm) {
dataEditor.setValue(''); dataEditor.setValue('');
codeEditor.setValue(''); codeEditor.setValue('');
}; };
var showFiles = function(category, algorithm, files) { var showFiles = function (category, algorithm, files) {
var maxButtonCount = 3, fileNames = Object.keys (files), lastFile = -1; var maxButtonCount = 3, fileNames = Object.keys(files), lastFile = -1;
var init = false; var init = false;
var currentFileBarButtons = []; var currentFileBarButtons = [];
function addFileButton (file, explanation) { function addFileButton(file, explanation) {
var $file = $('<button>').append(file).click(function () { var $file = $('<button>').append(file).click(function () {
loadFile(category, algorithm, file, explanation); loadFile(category, algorithm, file, explanation);
$('.files_bar > button').removeClass('active'); $('.files_bar > button').removeClass('active');
$(this).addClass('active'); $(this).addClass('active');
}); });
$('.files_bar').append($file); $('.files_bar').append($file);
currentFileBarButtons.push ($file); currentFileBarButtons.push($file);
if (!init) { if (!init) {
init = true; init = true;
$file.click(); $file.click();
}
} }
}
function clearFileBar () { function clearFileBar() {
currentFileBarButtons.forEach (function (f) { currentFileBarButtons.forEach(function (f) {
f.remove (); f.remove();
}); });
} }
$('.files_bar').empty(); $('.files_bar').empty();
var $nextButton = $('<button>').append ('<b>&gt;</b>').addClass ('files_bar_right_button').click (function () { var $nextButton = $('<button>').append('<b>&gt;</b>').addClass('files_bar_right_button').click(function () {
if (lastFile >= fileNames.length) { return; } if (lastFile >= fileNames.length) {
clearFileBar (); //first, remove the previously visible buttons return;
}
clearFileBar(); //first, remove the previously visible buttons
init = false; init = false;
fileNames.slice (lastFile+1, lastFile+1+maxButtonCount).forEach (function (file) { fileNames.slice(lastFile + 1, lastFile + 1 + maxButtonCount).forEach(function (file) {
file && addFileButton (file, files [file]); file && addFileButton(file, files [file]);
});
lastFile += maxButtonCount;
}); });
$ ('.files_bar').append ($nextButton); lastFile += maxButtonCount;
});
$('.files_bar').append($nextButton);
var $prevButton = $('<button>').append ('<b>&lt;</b>').addClass ('files_bar_left_button').click (function () { var $prevButton = $('<button>').append('<b>&lt;</b>').addClass('files_bar_left_button').click(function () {
if (lastFile === maxButtonCount-1) { return; } if (lastFile === maxButtonCount - 1) {
return;
}
clearFileBar (); //first, remove the previously visible buttons clearFileBar(); //first, remove the previously visible buttons
lastFile -= maxButtonCount; lastFile -= maxButtonCount;
init = false; init = false;
fileNames.slice (lastFile+1-maxButtonCount, lastFile+1).forEach (function (file) { fileNames.slice(lastFile + 1 - maxButtonCount, lastFile + 1).forEach(function (file) {
addFileButton (file, files [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) { var loadAlgorithm = function (category, algorithm) {
if (checkLoading()) return; if (checkLoading()) return;
...@@ -224,11 +228,11 @@ var anyOpened = false; ...@@ -224,11 +228,11 @@ var anyOpened = false;
$.getJSON('./algorithm/category.json', function (data) { $.getJSON('./algorithm/category.json', function (data) {
list = data; list = data;
for (var category in list) { for (var category in list) {
(function(category) { (function (category) {
var $category = $('<button class="category">') var $category = $('<button class="category">')
.append('<i class="fa fa-fw fa-caret-down">') .append('<i class="fa fa-fw fa-caret-down">')
.append(list[category].name); .append(list[category].name);
$category.click(function() { $category.click(function () {
$('[data-category="' + category + '"]').toggleClass('collapse'); $('[data-category="' + category + '"]').toggleClass('collapse');
$(this).find('i.fa').toggleClass('fa-caret-down fa-caret-up'); $(this).find('i.fa').toggleClass('fa-caret-down fa-caret-up');
}); });
...@@ -297,6 +301,9 @@ var showInfoToast = function (info) { ...@@ -297,6 +301,9 @@ var showInfoToast = function (info) {
}, 3000); }, 3000);
}; };
$('#shared').mouseup(function () {
$(this).select();
});
$('#btn_share').click(function () { $('#btn_share').click(function () {
var $icon = $(this).find('.fa-share'); var $icon = $(this).find('.fa-share');
$icon.addClass('fa-spin fa-spin-faster'); $icon.addClass('fa-spin fa-spin-faster');
...@@ -447,7 +454,7 @@ $module_container.on('DOMMouseScroll mousewheel', '.module_wrapper', function (e ...@@ -447,7 +454,7 @@ $module_container.on('DOMMouseScroll mousewheel', '.module_wrapper', function (e
// Share scratch paper // Share scratch paper
var getParameterByName = function(name) { var getParameterByName = function (name) {
var url = window.location.href; var url = window.location.href;
name = name.replace(/[\[\]]/g, "\\$&"); name = name.replace(/[\[\]]/g, "\\$&");
var regex = new RegExp("[?&]" + name + "(=([^&#]*)|&|#|$)"), var regex = new RegExp("[?&]" + name + "(=([^&#]*)|&|#|$)"),
...@@ -481,7 +488,8 @@ var loadScratchPaper = function (gistID) { ...@@ -481,7 +488,8 @@ var loadScratchPaper = function (gistID) {
var dir = getFileDir(category, algorithm, 'scratch_paper'); var dir = getFileDir(category, algorithm, 'scratch_paper');
cachedFile[dir] = { cachedFile[dir] = {
data: data.files['data.js'].content, 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); loadAlgorithm(category, algorithm);
}); });
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册