$('.pallete').hide();
$(document).delegate('.pick', 'click', function () {
var pos = $(this).offset();
var x = pos.left - $(window).scrollLeft() + $(this).width();
var y = pos.top - $(window).scrollTop() + $(this).height();
$('.pallete').css({
top: y + "px",
left: x + "px",
}).show();
});
$(document).delegate('.col', 'click', function () {
var pos = $(this).css('background-color');
$('.pick').css('background-color', pos);
$(this).parents('div').fadeOut();
});
Run Code Online (Sandbox Code Playgroud)
这是小提琴,http://jsfiddle.net/zPNk3/5/.问题是,当我第一次点击.pick元素时,'.palette'元素被正确显示.但是当我下次点击同样不起作用时.
当你这样做时$(this).parents('div').fadeOut(),你就会淡化元素的所有 <div>父母.你只是在展示.pallete.
尝试:
$(this).closest('.pallete').fadeOut();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
71 次 |
| 最近记录: |