如何在特定范围内定位图像?

时间:2012-05-30 17:53:52

标签: javascript jquery html css

我正在构建一个多项选择问卷,使用jQuery在悬停时切换单选按钮。我对每个可能的答案都有一个范围,在里面我有单选按钮,我想在悬停时交换源。

现在这些是我制作的图像,而不是实际的单选按钮。我有两个图像,经过检查和取消选中,当用户将鼠标悬停时,我正在交换src。

因此,当用户将鼠标悬停在单选按钮本身或单选按钮旁边的实际文本上时,该按钮会显示一个点。

这是我的跨度,包含单选按钮和文本(请记住我有5个这样的。)

<span class='choice' id='A'><img src="images/radioUnchecked.png" width="20" height="21" class='radioButton'>A) Naked woman</span>

那么当用户将鼠标悬停在文本上时,如何使用jQuery来定位单选按钮?

编辑: 以下是用于切换的 的jQuery,但它仅在用户将鼠标悬停在图像上时才有效。

$('img.radioButton').hover(function () {
    this.src = 'images/radioChecked.png';
}, function () {
    this.src = 'images/radioUnchecked.png';
});

1 个答案:

答案 0 :(得分:5)

$('span.choice').hover(function() {
   $('img.radioButton', this).attr('src', 'images/radioChecked.png')
}, function() {
   $('img.radioButton', this).attr('src', 'images/radioUnchecked.png')
});

如果您有更多关于班级choice的元素,那么您可以尝试以下操作:

$('span.choice').has('img.radioButton').hover(function() {
   $('img.radioButton', this).attr('src', 'images/radioChecked.png')
}, function() {
   $('img.radioButton', this).attr('src', 'images/radioUnchecked.png')
});

$('span.choice').has('img.radioButton')将仅检测包含img.radioButton的范围。