Подскажите, как-нибудь можно оптимизировать данный скрипт (вью блоки на вывод добавлены пока только 1 и 2 пункту).
Это меню, в котором пункт первого ряда является категроией для пунктов предпоследнего ряда которые выводят вью-блок, а пункты последнего ряда выводят его расширенную версию.
(function($){
Drupal.behaviors.dynamic_products = {
attach: function (context, settings) {
$('.lm_1_1').click(function(){
$('.lm_1_1, .lm_1_1_2_1').css('background-color', '#325D78');
$('.lm_1_2, .lm_1_3, .lm_1_4, .lm_1_5, .lm_1_1_2_2').css('background-color', '#232C32');
$('.lm_1_1_2, .lm_1_1_2_1_out, .view-id-left_block_updates').css('display', 'block');
$('.lm_1_2_2, .lm_1_3_2, .lm_1_4_2, .lm_1_5_2, .lm_1_1_2_2_out, .lm_1_2_2_1_out, .lm_1_2_2_2_out, .lm_1_2_2_3_out, .lm_1_3_2_1_out, .lm_1_3_2_2_out, .lm_1_3_2_3_out, .lm_1_4_2_1_out, .lm_1_4_2_2_out, .lm_1_4_2_3_out, .lm_1_5_2_1_out, .lm_1_5_2_2_out, .view-id-left_block_guild_news ').css('display', 'none');
});
$('.lm_1_1_2_1').click(function(){
$('.lm_1_1_2_1').css('background-color', '#325D78');
$('.lm_1_1_2_2').css('background-color', '#232C32');
$('.lm_1_1_2_1_out, .view-id-left_block_updates').css('display', 'block');
$('.lm_1_1_2_2_out, .view-id-left_block_guild_news').css('display', 'none');
});
$('.lm_1_1_2_1_out').click(function(){
$('#block-views-update-main-content-block').css('display', 'block');
$('#block-views-main-block-content-block').css('display', 'none');
});
$('.lm_1_1_2_2').click(function(){
$('.lm_1_1_2_2').css('background-color', '#325D78');
$('.lm_1_1_2_1').css('background-color', '#232C32');
$('.lm_1_1_2_2_out, .view-id-left_block_guild_news').css('display', 'block');
$('.lm_1_1_2_1_out, .view-id-left_block_updates').css('display', 'none');
});
$('.lm_1_2').click(function(){
$('.lm_1_2, .lm_1_2_2_1').css('background-color', '#325D78');
$('.lm_1_1, .lm_1_3, .lm_1_4, .lm_1_5, .lm_1_2_2_2, .lm_1_2_2_3').css('background-color', '#232C32');
$('.lm_1_2_2, .lm_1_2_2_1_out').css('display', 'block');
$('.lm_1_1_2, .lm_1_3_2, .lm_1_4_2, .lm_1_5_2, .lm_1_1_2_1_out, .lm_1_1_2_2_out, .lm_1_2_2_2_out, .lm_1_2_2_3_out, .lm_1_3_2_1_out, .lm_1_3_2_2_out, .lm_1_3_2_3_out, .lm_1_4_2_1_out, .lm_1_4_2_2_out, .lm_1_4_2_3_out, .lm_1_5_2_1_out, .lm_1_5_2_2_out, .view-id-left_block_updates, .view-id-left_block_guild_news').css('display', 'none');
});
$('.lm_1_2_2_1').click(function(){
$('.lm_1_2_2_1').css('background-color', '#325D78');
$('.lm_1_2_2_2, .lm_1_2_2_3').css('background-color', '#232C32');
$('.lm_1_2_2_1_out').css('display', 'block');
$('.lm_1_2_2_2_out, .lm_1_2_2_3_out, .view-id-left_block_updates, .view-id-left_block_guild_news').css('display', 'none');
});
$('.lm_1_2_2_2').click(function(){
$('.lm_1_2_2_2').css('background-color', '#325D78');
$('.lm_1_2_2_1, .lm_1_2_2_3').css('background-color', '#232C32');
$('.lm_1_2_2_2_out').css('display', 'block');
$('.lm_1_2_2_1_out, .lm_1_2_2_3_out, .view-id-left_block_updates, .view-id-left_block_guild_news').css('display', 'none');
});
$('.lm_1_2_2_3').click(function(){
$('.lm_1_2_2_3').css('background-color', '#325D78');
$('.lm_1_2_2_1, .lm_1_2_2_2').css('background-color', '#232C32');
$('.lm_1_2_2_3_out').css('display', 'block');
$('.lm_1_2_2_1_out, .lm_1_2_2_2_out, .view-id-left_block_updates, .view-id-left_block_guild_news').css('display', 'none');
});
$('.lm_1_3').click(function(){
$('.lm_1_3, .lm_1_3_2_1').css('background-color', '#325D78');
$('.lm_1_1, .lm_1_2, .lm_1_4, .lm_1_5, .lm_1_3_2_2, .lm_1_3_2_3').css('background-color', '#232C32');
$('.lm_1_3_2, .lm_1_3_2_1_out').css('display', 'block');
$('.lm_1_1_2, .lm_1_2_2, .lm_1_4_2, .lm_1_5_2, .lm_1_1_2_1_out, .lm_1_1_2_2_out, .lm_1_2_2_1_out, .lm_1_2_2_2_out, .lm_1_3_2_3_out, .lm_1_3_2_2_out, .lm_1_3_2_3_out, .lm_1_4_2_1_out, .lm_1_4_2_2_out, .lm_1_4_2_3_out, .lm_1_5_2_1_out, .lm_1_5_2_2_out, .view-id-left_block_updates, .view-id-left_block_guild_news').css('display', 'none');
});
$('.lm_1_3_2_1').click(function(){
$('.lm_1_3_2_1').css('background-color', '#325D78');
$('.lm_1_3_2_2, .lm_1_3_2_3').css('background-color', '#232C32');
$('.lm_1_3_2_1_out').css('display', 'block');
$('.lm_1_3_2_2_out, .lm_1_3_2_3_out, .view-id-left_block_updates, .view-id-left_block_guild_news').css('display', 'none');
});
$('.lm_1_3_2_2').click(function(){
$('.lm_1_3_2_2').css('background-color', '#325D78');
$('.lm_1_3_2_1, .lm_1_3_2_3').css('background-color', '#232C32');
$('.lm_1_3_2_2_out').css('display', 'block');
$('.lm_1_3_2_1_out, .lm_1_3_2_3_out, .view-id-left_block_updates, .view-id-left_block_guild_news').css('display', 'none');
});
$('.lm_1_3_2_3').click(function(){
$('.lm_1_3_2_3').css('background-color', '#325D78');
$('.lm_1_3_2_1, .lm_1_3_2_2').css('background-color', '#232C32');
$('.lm_1_3_2_3_out').css('display', 'block');
$('.lm_1_3_2_1_out, .lm_1_3_2_2_out, .view-id-left_block_updates, .view-id-left_block_guild_news').css('display', 'none');
});
$('.lm_1_4').click(function(){
$('.lm_1_4, .lm_1_4_2_1').css('background-color', '#325D78');
$('.lm_1_1, .lm_1_2, .lm_1_3, .lm_1_5, .lm_1_4_2_2, .lm_1_4_2_3').css('background-color', '#232C32');
$('.lm_1_4_2, .lm_1_4_2_1_out').css('display', 'block');
$('.lm_1_1_2, .lm_1_2_2, .lm_1_3_2, .lm_1_5_2, .lm_1_1_2_1_out, .lm_1_1_2_2_out, .lm_1_2_2_1_out, .lm_1_2_2_2_out, .lm_1_2_2_3_out, .lm_1_3_2_1_out, .lm_1_3_2_2_out, .lm_1_3_2_3_out, .lm_1_4_2_2_out, .lm_1_4_2_3_out, .lm_1_5_2_1_out, .lm_1_5_2_2_out, .view-id-left_block_updates, .view-id-left_block_guild_news').css('display', 'none');
});
$('.lm_1_4_2_1').click(function(){
$('.lm_1_4_2_1').css('background-color', '#325D78');
$('.lm_1_4_2_2, .lm_1_4_2_3').css('background-color', '#232C32');
$('.lm_1_4_2_1_out').css('display', 'block');
$('.lm_1_4_2_2_out, .lm_1_4_2_3_out, .view-id-left_block_updates, .view-id-left_block_guild_news').css('display', 'none');
});
$('.lm_1_4_2_2').click(function(){
$('.lm_1_4_2_2').css('background-color', '#325D78');
$('.lm_1_4_2_1, .lm_1_4_2_3').css('background-color', '#232C32');
$('.lm_1_4_2_2_out').css('display', 'block');
$('.lm_1_4_2_1_out, .lm_1_4_2_3_out, .view-id-left_block_updates, .view-id-left_block_guild_news').css('display', 'none');
});
$('.lm_1_4_2_3').click(function(){
$('.lm_1_4_2_3').css('background-color', '#325D78');
$('.lm_1_4_2_1, .lm_1_4_2_2').css('background-color', '#232C32');
$('.lm_1_4_2_3_out').css('display', 'block');
$('.lm_1_4_2_1_out, .lm_1_4_2_2_out, .view-id-left_block_updates, .view-id-left_block_guild_news').css('display', 'none');
});
$('.lm_1_5').click(function(){
$('.lm_1_5, .lm_1_5_2_1').css('background-color', '#325D78');
$('.lm_1_1, .lm_1_2, .lm_1_3, .lm_1_4, .lm_1_5_2_2').css('background-color', '#232C32');
$('.lm_1_5_2, .lm_1_5_2_1_out').css('display', 'block');
$('.lm_1_1_2, .lm_1_2_2, .lm_1_3_2, .lm_1_4_2, .lm_1_1_2_1_out, .lm_1_1_2_2_out, .lm_1_2_2_1_out, .lm_1_2_2_2_out, .lm_1_2_2_3_out, .lm_1_3_2_1_out, .lm_1_3_2_2_out, .lm_1_3_2_3_out, .lm_1_4_2_1_out, .lm_1_4_2_2_out, .lm_1_4_2_3_out, .lm_1_5_2_2_out, .view-id-left_block_updates, .view-id-left_block_guild_news').css('display', 'none');
});
$('.lm_1_5_2_1').click(function(){
$('.lm_1_5_2_1').css('background-color', '#325D78');
$('.lm_1_5_2_2').css('background-color', '#232C32');
$('.lm_1_5_2_1_out').css('display', 'block');
$('.lm_1_5_2_2_out').css('display', 'none');
});
$('.lm_1_5_2_2').click(function(){
$('.lm_1_5_2_2').css('background-color', '#325D78');
$('.lm_1_5_2_1').css('background-color', '#232C32');
$('.lm_1_5_2_2_out').css('display', 'block');
$('.lm_1_5_2_1_out').css('display', 'none');
});
}
}
})(jQuery);
Drupal.behaviors.dynamic_products = {
attach: function (context, settings) {
$('.lm_1_1').click(function(){
$('.lm_1_1, .lm_1_1_2_1').css('background-color', '#325D78');
$('.lm_1_2, .lm_1_3, .lm_1_4, .lm_1_5, .lm_1_1_2_2').css('background-color', '#232C32');
$('.lm_1_1_2, .lm_1_1_2_1_out, .view-id-left_block_updates').css('display', 'block');
$('.lm_1_2_2, .lm_1_3_2, .lm_1_4_2, .lm_1_5_2, .lm_1_1_2_2_out, .lm_1_2_2_1_out, .lm_1_2_2_2_out, .lm_1_2_2_3_out, .lm_1_3_2_1_out, .lm_1_3_2_2_out, .lm_1_3_2_3_out, .lm_1_4_2_1_out, .lm_1_4_2_2_out, .lm_1_4_2_3_out, .lm_1_5_2_1_out, .lm_1_5_2_2_out, .view-id-left_block_guild_news ').css('display', 'none');
});
$('.lm_1_1_2_1').click(function(){
$('.lm_1_1_2_1').css('background-color', '#325D78');
$('.lm_1_1_2_2').css('background-color', '#232C32');
$('.lm_1_1_2_1_out, .view-id-left_block_updates').css('display', 'block');
$('.lm_1_1_2_2_out, .view-id-left_block_guild_news').css('display', 'none');
});
$('.lm_1_1_2_1_out').click(function(){
$('#block-views-update-main-content-block').css('display', 'block');
$('#block-views-main-block-content-block').css('display', 'none');
});
$('.lm_1_1_2_2').click(function(){
$('.lm_1_1_2_2').css('background-color', '#325D78');
$('.lm_1_1_2_1').css('background-color', '#232C32');
$('.lm_1_1_2_2_out, .view-id-left_block_guild_news').css('display', 'block');
$('.lm_1_1_2_1_out, .view-id-left_block_updates').css('display', 'none');
});
$('.lm_1_2').click(function(){
$('.lm_1_2, .lm_1_2_2_1').css('background-color', '#325D78');
$('.lm_1_1, .lm_1_3, .lm_1_4, .lm_1_5, .lm_1_2_2_2, .lm_1_2_2_3').css('background-color', '#232C32');
$('.lm_1_2_2, .lm_1_2_2_1_out').css('display', 'block');
$('.lm_1_1_2, .lm_1_3_2, .lm_1_4_2, .lm_1_5_2, .lm_1_1_2_1_out, .lm_1_1_2_2_out, .lm_1_2_2_2_out, .lm_1_2_2_3_out, .lm_1_3_2_1_out, .lm_1_3_2_2_out, .lm_1_3_2_3_out, .lm_1_4_2_1_out, .lm_1_4_2_2_out, .lm_1_4_2_3_out, .lm_1_5_2_1_out, .lm_1_5_2_2_out, .view-id-left_block_updates, .view-id-left_block_guild_news').css('display', 'none');
});
$('.lm_1_2_2_1').click(function(){
$('.lm_1_2_2_1').css('background-color', '#325D78');
$('.lm_1_2_2_2, .lm_1_2_2_3').css('background-color', '#232C32');
$('.lm_1_2_2_1_out').css('display', 'block');
$('.lm_1_2_2_2_out, .lm_1_2_2_3_out, .view-id-left_block_updates, .view-id-left_block_guild_news').css('display', 'none');
});
$('.lm_1_2_2_2').click(function(){
$('.lm_1_2_2_2').css('background-color', '#325D78');
$('.lm_1_2_2_1, .lm_1_2_2_3').css('background-color', '#232C32');
$('.lm_1_2_2_2_out').css('display', 'block');
$('.lm_1_2_2_1_out, .lm_1_2_2_3_out, .view-id-left_block_updates, .view-id-left_block_guild_news').css('display', 'none');
});
$('.lm_1_2_2_3').click(function(){
$('.lm_1_2_2_3').css('background-color', '#325D78');
$('.lm_1_2_2_1, .lm_1_2_2_2').css('background-color', '#232C32');
$('.lm_1_2_2_3_out').css('display', 'block');
$('.lm_1_2_2_1_out, .lm_1_2_2_2_out, .view-id-left_block_updates, .view-id-left_block_guild_news').css('display', 'none');
});
$('.lm_1_3').click(function(){
$('.lm_1_3, .lm_1_3_2_1').css('background-color', '#325D78');
$('.lm_1_1, .lm_1_2, .lm_1_4, .lm_1_5, .lm_1_3_2_2, .lm_1_3_2_3').css('background-color', '#232C32');
$('.lm_1_3_2, .lm_1_3_2_1_out').css('display', 'block');
$('.lm_1_1_2, .lm_1_2_2, .lm_1_4_2, .lm_1_5_2, .lm_1_1_2_1_out, .lm_1_1_2_2_out, .lm_1_2_2_1_out, .lm_1_2_2_2_out, .lm_1_3_2_3_out, .lm_1_3_2_2_out, .lm_1_3_2_3_out, .lm_1_4_2_1_out, .lm_1_4_2_2_out, .lm_1_4_2_3_out, .lm_1_5_2_1_out, .lm_1_5_2_2_out, .view-id-left_block_updates, .view-id-left_block_guild_news').css('display', 'none');
});
$('.lm_1_3_2_1').click(function(){
$('.lm_1_3_2_1').css('background-color', '#325D78');
$('.lm_1_3_2_2, .lm_1_3_2_3').css('background-color', '#232C32');
$('.lm_1_3_2_1_out').css('display', 'block');
$('.lm_1_3_2_2_out, .lm_1_3_2_3_out, .view-id-left_block_updates, .view-id-left_block_guild_news').css('display', 'none');
});
$('.lm_1_3_2_2').click(function(){
$('.lm_1_3_2_2').css('background-color', '#325D78');
$('.lm_1_3_2_1, .lm_1_3_2_3').css('background-color', '#232C32');
$('.lm_1_3_2_2_out').css('display', 'block');
$('.lm_1_3_2_1_out, .lm_1_3_2_3_out, .view-id-left_block_updates, .view-id-left_block_guild_news').css('display', 'none');
});
$('.lm_1_3_2_3').click(function(){
$('.lm_1_3_2_3').css('background-color', '#325D78');
$('.lm_1_3_2_1, .lm_1_3_2_2').css('background-color', '#232C32');
$('.lm_1_3_2_3_out').css('display', 'block');
$('.lm_1_3_2_1_out, .lm_1_3_2_2_out, .view-id-left_block_updates, .view-id-left_block_guild_news').css('display', 'none');
});
$('.lm_1_4').click(function(){
$('.lm_1_4, .lm_1_4_2_1').css('background-color', '#325D78');
$('.lm_1_1, .lm_1_2, .lm_1_3, .lm_1_5, .lm_1_4_2_2, .lm_1_4_2_3').css('background-color', '#232C32');
$('.lm_1_4_2, .lm_1_4_2_1_out').css('display', 'block');
$('.lm_1_1_2, .lm_1_2_2, .lm_1_3_2, .lm_1_5_2, .lm_1_1_2_1_out, .lm_1_1_2_2_out, .lm_1_2_2_1_out, .lm_1_2_2_2_out, .lm_1_2_2_3_out, .lm_1_3_2_1_out, .lm_1_3_2_2_out, .lm_1_3_2_3_out, .lm_1_4_2_2_out, .lm_1_4_2_3_out, .lm_1_5_2_1_out, .lm_1_5_2_2_out, .view-id-left_block_updates, .view-id-left_block_guild_news').css('display', 'none');
});
$('.lm_1_4_2_1').click(function(){
$('.lm_1_4_2_1').css('background-color', '#325D78');
$('.lm_1_4_2_2, .lm_1_4_2_3').css('background-color', '#232C32');
$('.lm_1_4_2_1_out').css('display', 'block');
$('.lm_1_4_2_2_out, .lm_1_4_2_3_out, .view-id-left_block_updates, .view-id-left_block_guild_news').css('display', 'none');
});
$('.lm_1_4_2_2').click(function(){
$('.lm_1_4_2_2').css('background-color', '#325D78');
$('.lm_1_4_2_1, .lm_1_4_2_3').css('background-color', '#232C32');
$('.lm_1_4_2_2_out').css('display', 'block');
$('.lm_1_4_2_1_out, .lm_1_4_2_3_out, .view-id-left_block_updates, .view-id-left_block_guild_news').css('display', 'none');
});
$('.lm_1_4_2_3').click(function(){
$('.lm_1_4_2_3').css('background-color', '#325D78');
$('.lm_1_4_2_1, .lm_1_4_2_2').css('background-color', '#232C32');
$('.lm_1_4_2_3_out').css('display', 'block');
$('.lm_1_4_2_1_out, .lm_1_4_2_2_out, .view-id-left_block_updates, .view-id-left_block_guild_news').css('display', 'none');
});
$('.lm_1_5').click(function(){
$('.lm_1_5, .lm_1_5_2_1').css('background-color', '#325D78');
$('.lm_1_1, .lm_1_2, .lm_1_3, .lm_1_4, .lm_1_5_2_2').css('background-color', '#232C32');
$('.lm_1_5_2, .lm_1_5_2_1_out').css('display', 'block');
$('.lm_1_1_2, .lm_1_2_2, .lm_1_3_2, .lm_1_4_2, .lm_1_1_2_1_out, .lm_1_1_2_2_out, .lm_1_2_2_1_out, .lm_1_2_2_2_out, .lm_1_2_2_3_out, .lm_1_3_2_1_out, .lm_1_3_2_2_out, .lm_1_3_2_3_out, .lm_1_4_2_1_out, .lm_1_4_2_2_out, .lm_1_4_2_3_out, .lm_1_5_2_2_out, .view-id-left_block_updates, .view-id-left_block_guild_news').css('display', 'none');
});
$('.lm_1_5_2_1').click(function(){
$('.lm_1_5_2_1').css('background-color', '#325D78');
$('.lm_1_5_2_2').css('background-color', '#232C32');
$('.lm_1_5_2_1_out').css('display', 'block');
$('.lm_1_5_2_2_out').css('display', 'none');
});
$('.lm_1_5_2_2').click(function(){
$('.lm_1_5_2_2').css('background-color', '#325D78');
$('.lm_1_5_2_1').css('background-color', '#232C32');
$('.lm_1_5_2_2_out').css('display', 'block');
$('.lm_1_5_2_1_out').css('display', 'none');
});
}
}
})(jQuery);
Комментарии
css пишутся в css файле но не в скриптах, вот и оптимизация будет...
Я так понимаю вместо добавления цсс параметров лучше добавляться класс с этими параметрами?
Почему через более универсальные классы не решили? В таком виде этот скрипт достоин http://govnokod.ru/
Даже не понимаю о чем вы, у меня не столь глубокие знания. Изучаю что-то когда необходимо и естественно не факт что по итогам использую самый оптимальный вариант.