我的页面顶部有一个按钮,当我点击它时会滚动到DIV,但我也希望它将h3闪光灯变为一种颜色,然后当它滚动到它时再回到原始状态Facebook会做通知。
到目前为止的JQuery:
function goToByScroll(id) {
$('html,body').animate({ scrollTop: $("#" + id).offset().top }, 'slow');
$("#" + id).css({ "color": "yellow" }).delay(1000).css({ "color": "#222" });
}
到目前为止HTML:
<a href="javascript:void(0)" onclick="goToByScroll('createdest')">Add Destination</a>
<h3 id="createdest">Add a Country</h3>
但到目前为止,一切都没有改变。有人可以帮忙吗?
答案 0 :(得分:3)
使用animate()
函数的回调在动画完成后立即运行代码。
另外,我添加了data
属性来存储元素的原始颜色:
var $target = $("#" + id);
$target.data('oldColor', $target.css("color"));
$target.css("color", "yellow");
$('html,body').animate({ scrollTop: $("#" + id).offset().top }, 'slow', function() {
$target.delay(1000).css('color', $target.data('oldColor'))
});
答案 1 :(得分:2)
尝试queue()
方法:
function goToByScroll(id) {
$('html,body').animate({ scrollTop: $("#" + id).offset().top }, 'slow');
$("#" + id).css({ "color": "yellow" }).delay(1000).queue(function() {
$(this).css({ "color": "#222" });
})