繁体   English   中英

使用JQuery更改CSS无法正常工作

[英]Changing CSS with JQuery not working

我写了一个脚本来改变div的一些CSS属性。 我尝试过在谷歌上找到的两种方法,但它们都不起作用。 我已经彻底阅读了这些示例,但我不知道为什么这样做不起作用。

如果#rightsection内容较少,则#rightsection有图像, #leftsection #rightsection附加到#contentpage的底部。 但如果#rightsection中的内容#rightsection ,则内容会溢出。 所以我想改变position:absoluteposition:static当溢出时检测到滚动时position:static

我对JQuery并不是那么好,所以我希望你们中的任何人都能知道答案。 如果有人知道,我会很感激。

(function($) {
    $.fn.hasScrollBar = function() {
        return this.get(0).scrollHeight > this.height();
    }

    //Method 1
    if($("#rightsection").hasScrollBar()){
        $('.rightsection1').css({
            "position":"static",
            "margin":"-75px 0 0 150px"
        });
    }

    //Method 2
    if($("#rightsection").hasScrollBar()){
        $('#rightsection').addClass("rightsection1");
        $('#rightsection').removeClass("rightsection2");
    }
})(jQuery);

的jsfiddle

我改变了(function($) $(document).ready(function() ,现在它完美无缺。

我改变了(function($) $(document).ready(function() ,现在它完美无缺。

还有一件事:你应该注意到你改变它的原因(function($)$(document).ready(function()只是因为这里的代码根本没有被加载。

(function($) { ... })(jQuery); 用于$ .noConflict模式 ,以防其他库使用$ sign。

无论你是否添加这个包装器,你总是需要$(document).ready(function() { ... }); (或$(function() { ... });简而言之)初始化jQuery函数。

所以在你的情况下,你可能会这样做:

  (function($) {
    $(function() { 
      ...
      // your codes here
      ...
    });
   })(jQuery);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM