Я запрограммировал программу для выделения выбранной кнопки при нажатии и отмены выделения при нажатии другой кнопки. Это работает, но мне нужно сделать его менее повторяющимся (возможно, используя циклы).
var txt = $(".txt");
var xls = $(".xls");
var jpg = $(".jpg");
var png = $(".png");
var pdf = $(".pdf");
var mp3 = $(".mp3");
var mp4 = $(".mp4");
var gif = $(".gif");
var flac = $(".flac");
var html = $(".html");
var js = $(".js");
var aac = $(".aac");
var ai = $(".ai");
var avi = $(".avi");
var psd = $(".psd");
var tiff = $(".tiff");
var fileTypes = [txt, xls, jpg, png, pdf, mp3, mp4, gif, flac, html, js, aac, ai, avi, psd, tiff];
$(fileTypes[0]).click( function() {
for(i=0; i<fileTypes.length; i++)
{
fileTypes[i].removeClass("selected");
fileTypes[i].addClass("not-selected");
}
fileTypes[0].removeClass("not-selected");
fileTypes[0].addClass("selected");
});
$(fileTypes[1]).click( function() {
for(i=0; i<fileTypes.length; i++)
{
fileTypes[i].removeClass("selected");
fileTypes[i].addClass("not-selected");
}
fileTypes[1].removeClass("not-selected");
fileTypes[1].addClass("selected");
});
$(fileTypes[2]).click( function() {
for(i=0; i<fileTypes.length; i++)
{
fileTypes[i].removeClass("selected");
fileTypes[i].addClass("not-selected");
}
fileTypes[2].removeClass("not-selected");
fileTypes[2].addClass("selected");
}); // It does this 16 times, the length of the fileTypes array
Я пытался использовать цикл for для решения этой проблемы, но мне это не удалось.
Пожалуйста помоги. Спасибо.