【问题标题】:Deleting/removing function?删除/删除功能?
【发布时间】:2012-12-23 23:27:13
【问题描述】:

我有这个小功能,可以将 div 设置为 position:fixed 在单击链接后。

$(window).load(function(){
    $('#linktofreeze').click(function() {
        var ftop = $('#fixedbox').offset().top - $(window).scrollTop();
        var fleft = $('#fixedbox').offset().left;
        $('#fixedbox').css({position: 'fixed', left: fleft + 'px', top: ftop + 'px'});
    });
});

我现在想要实现的是让整个事情倒退: 单击第二个链接时,div 的位置不应再“固定”。

最好的方法是什么?有没有办法再次删除/删除此功能“onClick”?

为了更清楚,我在 jsFiddle 上上传了文件: http://jsfiddle.net/hZX5h/72/

如果有人可以提供帮助,那就太好了。 谢谢!

【问题讨论】:

标签: jquery


【解决方案1】:

将其位置重置为relative

$("#linktounfreeze").click(function() {
  $('#fixedbox').css({position: 'relative'});  
  return false;
});

小提琴:http://jsfiddle.net/vVbGy/1/

【讨论】:

  • 感谢你们的帮助!猫王:这正是我想要的 :)
【解决方案2】:

您可以使用 unbind 方法来实现:

$('#linktofreeze').attr('onclick','').unbind('click');

jQuery 1.7+ 中更好的方法

$('#linktofreeze').off('click');

【讨论】:

    【解决方案3】:

    这是你想要的吗? (在你的 js 代码末尾添加这个):

    $('#linktounfreeze').click(function () {
      $('#fixedbox').css({
        position: 'relative'
      });
    return null;
    });
    

    【讨论】:

      猜你喜欢
      • 2020-08-07
      • 2018-07-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-03-18
      • 2021-08-22
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多