[jQuery] Re: .hasClass() not behaving as expected.

2009-02-11 Thread MiD-AwE


Thanks for the reply. I eventually removed the -color and -image for the
css background.



mkmanning wrote:
 
 
 In your code you're attaching the hover event to the anchor tags; in
 the sample html none of the anchors has a class (the class is on the
 parent li element).
 
 On Feb 8, 4:24 pm, MiD-AwE cr.midda...@gmail.com wrote:
 Please help, I've been wrestling with this for too long now.

 I've put together this code to change the background of a div when the
 mouse hovers over a list of divs. One of the listed divs has a class
 name of ash and I want to add a background image on that one hover;
 all of the other listed divs only have colors. The problem is that
 the .hasClass() doesn't seem to be behaving as it should, or I'm not
 doing something, or I'm just completely clueless?

 Below is my code and a sample html to test. Can someone please tell me
 what I'm doing wrong? Why is my $(this).hasClass('ash') not
 recognizing when my mouse hovers over the div with the class=ash?

 Thanks in advance,

 [code]
 !DOCTYPE html PUBLIC -//W3C//DTD XHTML 1.0 Transitional//EN
     http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd;
 html xmlns=http://www.w3.org/1999/xhtml; lang=en-us xml:lang=
 en-us
 head
   meta content=text/html; charset=UTF-8
  http-equiv=content-type /
   titlemouseover color changer with preview/title
   script type=text/javascript
  src=http://ajax.googleapis.com/ajax/libs/jquery/1.3.0/
 jquery.min.js/script
   script type=text/javascript
 //![CDATA[
 $(document).ready(function () {
   $.cstmzclrns = {clkclr : white};//$.cstmzclrns.clkclr
   $(#colors ul li a).hover(
     function () {
                         if (!$(this).hasClass('ash')) {
                           var color = $(this).css(background-color);
                     $(#cfilter).css({'background-color' : color});
                                 $(#cfilter).css({'background-image' :
 'none'});
                         } else {
                           $(#cfilter).css({'background-color' :
 'transparent'});
                           $(#cfilter).css({'background-image' :
 'url(img/ts/ash.png)'});
                         }
     }, function () {
                   if ($.cstmzclrns.clkclr == 'ash') {
                           $(#cfilter).css({'background-color' :
 'transparent'});
                           $(#cfilter).css({'background-image' :
 'url(img/ts/ash.png)'});
                         } else {
                           $(#cfilter).css({'background-color' :
 $.cstmzclrns.clkclr});
                                 $(#cfilter).css({'background-image' :
 'none'});
                         }
     }).click(
       function () {
                                 if ($(this).hasClass('ash')) {
                                   $.cstmzclrns = {clkclr : ash};
                                        
 $(#cfilter).css({'background-color' : 'transparent'});
                             $(#cfilter).css({'background-image' :
 'url(img/ts/
 ash.png)'});
                           } else {
                                   $.cstmzclrns = {clkclr :
 $(this).css(background-color)};
           $(#cfilter).css({'background-color' :
 $.cstmzclrns.clkclr});
                                        
 $(#cfilter).css({'background-image' : 'none'});
                           }
   });});

 //]]
 /script
   style media=screen type=text/css
 body {
 background-color: black;}

 #cfilter {
 margin: 0px;
 padding: 0px;
 opacity: 0.503;
 position: absolute;
 width: 473px;
 height: 466px;
 display: block;
 right: 0px;
 top: 0px;
 float: right;
 z-index: 1;
 clear: none;
 background-color: white;}

 #customize {
 border: 3px solid #afa688;
 margin: 0px;
 padding: 10px 10px 10px 13px;
 font-size: 0.8em;
 font-family: Arial,Helvetica,sans-serif;
 display: block;
 float: left;
 clear: left;
 position: absolute;
 opacity: 0.899;
 background-color: #f4e2ab;
 color: black;
 width: 200px;
 top: 25px;
 z-index: 3;}

 #colors {
 border-style: solid;
 border-width: 1px;
 padding: 0px;
 position: relative;
 background-color: white;
 height: 21px;
 top: 9px;
 width: 137px;
 left: 31px;
 display: block;}

 #colors ul {
 border-style: none;
 border-width: 1px;
 list-style-type: none;
 position: relative;
 top: -11px;
 width: 99.9%;
 left: -39px;
 height: 99.9%;}

 #colors ul li {
 margin: 0px;
 padding: 0px;
 float: left;}

 #colors ul li a {
 border: 1px solid black;
 margin: 0px 0px 0px 2px;
 padding: 0px;
 height: 15px;
 display: block;
 list-style-type: none;
 list-style-position: inside;
 width: 15px;
 float: left;}

   /style
 /head
 body style=direction: ltr;
 div id=customizeMouse over color blocks to see the
 design in available colors.
 div id=colors
               ul
                 li class=white
                    #                    background-color: white; color:
 white;. 
                 /li
                 li class=ash
                    #                    background: gray
 url(img/ts/ash.png); color:
 gray;
                   

[jQuery] Re: .hasClass() not behaving as expected.

2009-02-09 Thread Leonardo K
I tested your code here and works fine. I just ident your code to look
better.

On Mon, Feb 9, 2009 at 00:05, mkmanning michaell...@gmail.com wrote:


 In your code you're attaching the hover event to the anchor tags; in
 the sample html none of the anchors has a class (the class is on the
 parent li element).

 On Feb 8, 4:24 pm, MiD-AwE cr.midda...@gmail.com wrote:
  Please help, I've been wrestling with this for too long now.
 
  I've put together this code to change the background of a div when the
  mouse hovers over a list of divs. One of the listed divs has a class
  name of ash and I want to add a background image on that one hover;
  all of the other listed divs only have colors. The problem is that
  the .hasClass() doesn't seem to be behaving as it should, or I'm not
  doing something, or I'm just completely clueless?
 
  Below is my code and a sample html to test. Can someone please tell me
  what I'm doing wrong? Why is my $(this).hasClass('ash') not
  recognizing when my mouse hovers over the div with the class=ash?
 
  Thanks in advance,
 
  [code]
  !DOCTYPE html PUBLIC -//W3C//DTD XHTML 1.0 Transitional//EN
  http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd;
  html xmlns=http://www.w3.org/1999/xhtml; lang=en-us xml:lang=
  en-us
  head
meta content=text/html; charset=UTF-8
   http-equiv=content-type /
titlemouseover color changer with preview/title
script type=text/javascript
   src=http://ajax.googleapis.com/ajax/libs/jquery/1.3.0/
  jquery.min.js/script
script type=text/javascript
  //![CDATA[
  $(document).ready(function () {
$.cstmzclrns = {clkclr : white};//$.cstmzclrns.clkclr
$(#colors ul li a).hover(
  function () {
  if (!$(this).hasClass('ash')) {
var color = $(this).css(background-color);
  $(#cfilter).css({'background-color' : color});
  $(#cfilter).css({'background-image' :
 'none'});
  } else {
$(#cfilter).css({'background-color' :
 'transparent'});
$(#cfilter).css({'background-image' :
 'url(img/ts/ash.png)'});
  }
  }, function () {
if ($.cstmzclrns.clkclr == 'ash') {
$(#cfilter).css({'background-color' :
 'transparent'});
$(#cfilter).css({'background-image' :
 'url(img/ts/ash.png)'});
  } else {
$(#cfilter).css({'background-color' :
 $.cstmzclrns.clkclr});
  $(#cfilter).css({'background-image' :
 'none'});
  }
  }).click(
function () {
  if ($(this).hasClass('ash')) {
$.cstmzclrns = {clkclr : ash};
 
 $(#cfilter).css({'background-color' : 'transparent'});
  $(#cfilter).css({'background-image' :
 'url(img/ts/
  ash.png)'});
} else {
$.cstmzclrns = {clkclr :
 $(this).css(background-color)};
$(#cfilter).css({'background-color' :
  $.cstmzclrns.clkclr});
 
 $(#cfilter).css({'background-image' : 'none'});
}
});});
 
  //]]
  /script
style media=screen type=text/css
  body {
  background-color: black;}
 
  #cfilter {
  margin: 0px;
  padding: 0px;
  opacity: 0.503;
  position: absolute;
  width: 473px;
  height: 466px;
  display: block;
  right: 0px;
  top: 0px;
  float: right;
  z-index: 1;
  clear: none;
  background-color: white;}
 
  #customize {
  border: 3px solid #afa688;
  margin: 0px;
  padding: 10px 10px 10px 13px;
  font-size: 0.8em;
  font-family: Arial,Helvetica,sans-serif;
  display: block;
  float: left;
  clear: left;
  position: absolute;
  opacity: 0.899;
  background-color: #f4e2ab;
  color: black;
  width: 200px;
  top: 25px;
  z-index: 3;}
 
  #colors {
  border-style: solid;
  border-width: 1px;
  padding: 0px;
  position: relative;
  background-color: white;
  height: 21px;
  top: 9px;
  width: 137px;
  left: 31px;
  display: block;}
 
  #colors ul {
  border-style: none;
  border-width: 1px;
  list-style-type: none;
  position: relative;
  top: -11px;
  width: 99.9%;
  left: -39px;
  height: 99.9%;}
 
  #colors ul li {
  margin: 0px;
  padding: 0px;
  float: left;}
 
  #colors ul li a {
  border: 1px solid black;
  margin: 0px 0px 0px 2px;
  padding: 0px;
  height: 15px;
  display: block;
  list-style-type: none;
  list-style-position: inside;
  width: 15px;
  float: left;}
 
/style
  /head
  body style=direction: ltr;
  div id=customizeMouse over color blocks to see the
  design in available colors.
  div id=colors
ul
  li class=white
a href=# style=
background-color: white; color: white;./a
  /li
  li 

[jQuery] Re: .hasClass() not behaving as expected.

2009-02-08 Thread mkmanning

In your code you're attaching the hover event to the anchor tags; in
the sample html none of the anchors has a class (the class is on the
parent li element).

On Feb 8, 4:24 pm, MiD-AwE cr.midda...@gmail.com wrote:
 Please help, I've been wrestling with this for too long now.

 I've put together this code to change the background of a div when the
 mouse hovers over a list of divs. One of the listed divs has a class
 name of ash and I want to add a background image on that one hover;
 all of the other listed divs only have colors. The problem is that
 the .hasClass() doesn't seem to be behaving as it should, or I'm not
 doing something, or I'm just completely clueless?

 Below is my code and a sample html to test. Can someone please tell me
 what I'm doing wrong? Why is my $(this).hasClass('ash') not
 recognizing when my mouse hovers over the div with the class=ash?

 Thanks in advance,

 [code]
 !DOCTYPE html PUBLIC -//W3C//DTD XHTML 1.0 Transitional//EN
     http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd;
 html xmlns=http://www.w3.org/1999/xhtml; lang=en-us xml:lang=
 en-us
 head
   meta content=text/html; charset=UTF-8
  http-equiv=content-type /
   titlemouseover color changer with preview/title
   script type=text/javascript
  src=http://ajax.googleapis.com/ajax/libs/jquery/1.3.0/
 jquery.min.js/script
   script type=text/javascript
 //![CDATA[
 $(document).ready(function () {
   $.cstmzclrns = {clkclr : white};//$.cstmzclrns.clkclr
   $(#colors ul li a).hover(
     function () {
                         if (!$(this).hasClass('ash')) {
                           var color = $(this).css(background-color);
                     $(#cfilter).css({'background-color' : color});
                                 $(#cfilter).css({'background-image' : 
 'none'});
                         } else {
                           $(#cfilter).css({'background-color' : 
 'transparent'});
                           $(#cfilter).css({'background-image' : 
 'url(img/ts/ash.png)'});
                         }
     }, function () {
                   if ($.cstmzclrns.clkclr == 'ash') {
                           $(#cfilter).css({'background-color' : 
 'transparent'});
                           $(#cfilter).css({'background-image' : 
 'url(img/ts/ash.png)'});
                         } else {
                           $(#cfilter).css({'background-color' : 
 $.cstmzclrns.clkclr});
                                 $(#cfilter).css({'background-image' : 
 'none'});
                         }
     }).click(
       function () {
                                 if ($(this).hasClass('ash')) {
                                   $.cstmzclrns = {clkclr : ash};
                                         $(#cfilter).css({'background-color' 
 : 'transparent'});
                             $(#cfilter).css({'background-image' : 
 'url(img/ts/
 ash.png)'});
                           } else {
                                   $.cstmzclrns = {clkclr : 
 $(this).css(background-color)};
           $(#cfilter).css({'background-color' :
 $.cstmzclrns.clkclr});
                                         $(#cfilter).css({'background-image' 
 : 'none'});
                           }
   });});

 //]]
 /script
   style media=screen type=text/css
 body {
 background-color: black;}

 #cfilter {
 margin: 0px;
 padding: 0px;
 opacity: 0.503;
 position: absolute;
 width: 473px;
 height: 466px;
 display: block;
 right: 0px;
 top: 0px;
 float: right;
 z-index: 1;
 clear: none;
 background-color: white;}

 #customize {
 border: 3px solid #afa688;
 margin: 0px;
 padding: 10px 10px 10px 13px;
 font-size: 0.8em;
 font-family: Arial,Helvetica,sans-serif;
 display: block;
 float: left;
 clear: left;
 position: absolute;
 opacity: 0.899;
 background-color: #f4e2ab;
 color: black;
 width: 200px;
 top: 25px;
 z-index: 3;}

 #colors {
 border-style: solid;
 border-width: 1px;
 padding: 0px;
 position: relative;
 background-color: white;
 height: 21px;
 top: 9px;
 width: 137px;
 left: 31px;
 display: block;}

 #colors ul {
 border-style: none;
 border-width: 1px;
 list-style-type: none;
 position: relative;
 top: -11px;
 width: 99.9%;
 left: -39px;
 height: 99.9%;}

 #colors ul li {
 margin: 0px;
 padding: 0px;
 float: left;}

 #colors ul li a {
 border: 1px solid black;
 margin: 0px 0px 0px 2px;
 padding: 0px;
 height: 15px;
 display: block;
 list-style-type: none;
 list-style-position: inside;
 width: 15px;
 float: left;}

   /style
 /head
 body style=direction: ltr;
 div id=customizeMouse over color blocks to see the
 design in available colors.
 div id=colors
               ul
                 li class=white
                   a href=# style=
                   background-color: white; color: white;./a
                 /li
                 li class=ash
                   a href=# style=
                   background: gray url(img/ts/ash.png); color:
 gray;
                   ./a
                 /li
                 li class=light_blue
                   a