jQuery имеет hasClass () функция, которая возвращает true, если какой-либо элемент в перенесенном наборе содержит указанный класс
if (!$(this).hasClass("selected")) {
//do stuff
}
, Смотрят на мой пример использования
, Вот код для него
Sandbox
One div with a thumbs class
Another one with a thumbs class
РЕДАКТИРОВАНИЕ:
это - просто предположение, но Вы пробуете к , достигают чего-то вроде этого ?
, который Код jQuery здесь -
$(function() {
$('.thumbs').bind('click',function(e) { $(e.target).toggleClass('selected'); } );
$('.thumbs').hover(fadeItIn, fadeItOut);
$('.thumbs').css('opacity', 0.3);
});
function fadeItIn(e) {
if (!$(e.target).hasClass('selected'))
{
$(e.target).fadeTo('normal', 1.0);
}
}
function fadeItOut(e) {
if (!$(e.target).hasClass('selected'))
{
$(e.target).fadeTo('slow', 0.3);
}
}
One div with a thumbs class
Another one with a thumbs class
Да, объект сеанса может быть нулевым, но только в определенных обстоятельствах, с которыми вы редко будете сталкиваться:
Если у вас есть только код на страницах, вы не столкнетесь с этим. Большая часть моего кода ASP .NET использует сеанс без повторной проверки нулевого значения. Однако есть о чем подумать, если вы разрабатываете IHttpModule или иным образом упускаете более серьезные детали ASP .NET.
В ответ на комментарий: Доступно ли состояние сеанса, зависит от того, было ли выполнено событие AcquireRequestState для запроса. Здесь модуль состояния сеанса выполняет свою работу, считывая файл cookie сеанса и находя для вас подходящий набор переменных сеанса.
AcquireRequestState запускается перед передачей управления вашей странице. Так что, если вы вызываете со своей страницы другие функции, включая статические классы, все будет в порядке.
Если у вас есть классы, выполняющие логику инициализации во время запуска, например, в событии Application_Start или с помощью статического конструктора, состояние сеанса может быть недоступно. Все сводится к тому, есть ли текущий запрос и был ли запущен AcquireRequestState.
Кроме того, если клиент отключил файлы cookie, объект сеанса по-прежнему будет доступен, но при следующем запросе пользователь вернется с новым пустым сеансом. Это связано с тем, что клиенту дается пакет состояния сеанса, если у него его еще нет. Если клиент не передает cookie сеанса, у нас нет возможности идентифицировать клиента как того же самого, поэтому ему будет снова и снова передаваться новый сеанс.
РЕЗЮМЕ: В ASP.NET каждая веб-страница происходит от System.Web.UI.Page учебный класс. Класс Page объединяет экземпляр объекта HttpSession для данные сеанса. Класс Page предоставляет разные события и методы для настройка. В частности, OnInit используется для установки инициализировать состояние объекта Page. Если в запросе нет Сессионный cookie, новый Сессионный cookie будет выдано запрашивающей стороне.
РЕДАКТИРОВАТЬ:
Сессия: Концепция для начинающих
РЕЗЮМЕ: Сессия создается, когда пользователь отправляет первый запрос на сервер для любой страницы в веб-приложении, приложение создает сеанс и отправляет идентификатор сеанса обратно в пользователь с ответом и сохраняется на клиентской машине как небольшой куки. Так что в идеале машина, которая отключил куки, сеанс информация не будет сохранена ".