0

我想创建一个链接;例如。'点击这里查看背景演示'。然后点击链接;然后网页的背景会显示一个图像,并且该图像是可展开的。

我有一个独立的可扩展背景解决方案;使用以下。

但是我怎么可能只显示“点击时”;成为实施。

<!--Expandable BG code IE 7 +-->

  <style>

                #bg { position: fixed; top: 0; left: 0; }
                .bgwidth { width: 100%; }
                .bgheight { height: 100%; }

                #page-wrap { position: relative; width: 950px; margin-left: auto; margin-right: auto;;  }

  </style> 


 <script src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>
        <script>
                $(function() {   
                        var theWindow        = $(window),
                            $bg              = $("#bg"),
                            aspectRatio      = $bg.width() / $bg.height();

                        function resizeBg() {

                                if ( (theWindow.width() / theWindow.height()) < aspectRatio ) {
                                    $bg
                                        .removeClass()
                                        .addClass('bgheight');
                                } else {
                                    $bg
                                        .removeClass()
                                        .addClass('bgwidth');
                                }

                        }

                        theWindow.resize(function() {
                                resizeBg();
                        }).trigger("resize");

                });
        </script>


<!--Expandable BG code IE 7 +-->
4

1 回答 1

0

您有以下resize处理程序

theWindow.resize(function() {
    resizeBg();
}).trigger("resize");

如果您想在单击链接时调用它,那么您可以使用

$('a.link').on('click', function(e){
    e.preventDefault();
    resizeBg();
});

只需将给定的代码放在click您的处理程序之后/之前theWindow.resiz。还要确保你有一个a带有 class 的标签link,比如

<a href="#" class="link">Click</a>

.trigger("resize");resize处理程序中删除以停止调用 onload 处理程序。

于 2013-09-22T00:59:59.560 回答