2014-12-16 4 views
6

У меня есть этот код:.

$(document).ready(function() { 
    $('.fa-crosshairs').click(function() { 
    $('*').click(function() { 
     var currentclass = $(this).attr('class'); 
    }); 
    }); 
    $('#1color').click(function() { 
    $('body').css({ 
     "background-color": "black" 
    }); 
    }); 
}); 

Мне нужно получить currentclass вар, а затем использовать его вместо $ («тело») CSS, но я не знаю, как я должен сделать это.

Дело в том, чтобы получить один элемент, нажав, а затем изменить его CSS, когда я нажимаю на («#») 1color

+1

Что это $ («*»). Нажмите (функция() {вы являются обязательными для всех элементов внутри фа-перекрестье щелкните событие – Balachandran

+0

Показать ур структуру DOM или сделать скрипку – Balachandran

ответ

4

Объявите переменную глобально.

Вот пример того, как вы могли это сделать.

$(document).ready(function() { 
 
    var elem; 
 
    $('.fa-crosshairs').click(function() { 
 
    elem = this; 
 
    }); 
 
    $('input').click(function() { 
 
    $(elem).css({ 
 
     "background-color": "teal", 
 
     "color": "white" 
 
    }); 
 
    }); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script> 
 
<div class="fa-crosshairs">One</div> 
 
<div class="fa-crosshairs">Two</div> 
 
<div class="fa-crosshairs">Three</div> 
 
<div class="fa-crosshairs">Four</div> 
 
<div class="fa-crosshairs">Five</div> 
 
<div class="fa-crosshairs">Six</div> 
 
<input type="button" value="Change" />

+0

@ chipChocolate.py Удивительный! ! Спасибо вам всем – nanaki

1

переменной var currentclass = $(this).attr('class'); объявлена ​​внутри функции. так что он доступен внутри функции, где он объявлен. Область действия переменной находится внутри этой функции. Вам необходимо объявить переменную как GLOBAL VARIABLE так, чтобы она была доступна вне функции. SCOPE OF A VARIABLE