html页面怎么实现动态加载页面

html-css012

html页面怎么实现动态加载页面,第1张

方法:1、直接贴图:在界面上贴一个gif动态等待效果图片,gif图片获取方式:网上找素材,会ps的可以自己制作<img src="wait.gif" />

2、CSS3/SVG/HTML5 Canvas手动绘制等待效果:

这种效果:网上有很多类似素材,可以根据需要选择,或使用上述技术绘制

下面提供一个CSS3绘制的范例

3、CSS的代码如下:

<style>

.loading {

width:0

height:0

border-right:20px solid #fff

border-top:20px solid #000

border-left:20px solid #fff

border-bottom:20px solid #000

border-radius: 20px

-moz-border-radius: 20px

-webkit-border-radius: 20px

}

.loading {

animation: bganim 0.6s linear 0s infinite

-moz-animation: bganim 0.6s linear 0s infinite

-webkit-animation: bganim 0.6s linear 0s infinite

}

@keyframes bganim {

from { transform:rotate(0deg)} to { transform:rotate(360deg)}

}

@-moz-keyframes bganim {

from { -moz-transform:rotate(0deg)} to { -moz-transform:rotate(360deg)}

}

@-webkit-keyframes bganim {

from { -webkit-transform:rotate(0deg)} to { -webkit-transform:rotate(360deg)}

}

</style>

4、<label>CSS3效果</label>,<div class="loading"></div>

效果如下图:运行机制很简单,先手动绘制一个静态的图,然后控制对应div进行360度旋转,即可实现

5、使用js等待效果插件(如:spin.js)

6、JS代码如下:

var opts = {

lines: 9,

length: 0,

width: 15,

radius: 20,

corners: 1,

rotate: 0,

direction: 1,

color: '#0101DF',

speed: 1,

trail: 34,

shadow: false,

hwaccel: false,

className: 'spinner',

zIndex: 2e9,

top: '50%',

left: '50%'

}

var target = document.getElementById('img_wait')

var spinner = new Spinner(opts).spin(target)

7、html代码的引用:<div id="img_wait"></div>

8、打开测试,效果如下

我刚开始也在找这个问题的答案,现在解决了,为后面学习的人栽棵树吧。

实现这个功能有很多种方法,这里我选一种个人认为比较简单的方法:

建立三个网页,一个作为主页面,另外两个子页面作为切换页面嵌入主页面,子页面也可以用文字替代。

用jQuery方法来切换页面,语言比较简单网上搜一下看看就懂了

下面附上代码

<!DOCTYPE html>

<html>

<head>

    <meta charset="UTF-8">

    <title>标题</title>

    <!--jQuery 百度CDN库-->

    <script src="https://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"></script>

    <script>

        // jQuery代码

        $(document).ready(function () {

            $("#b1").click(function () {

                $("#tab_1").show()// 显示

                $("#tab_2").hide()// 隐藏

            })

            $("#b2").click(function () {

                $("#tab_1").hide()

                $("#tab_2").show()

            })

        })

    </script>

</head>

<body>

<div>

    <h1>标题一</h1>

</div>

<div>

    <div>

        <ul>

            <li><button id="b1">菜单1</button></li>

            <li><button id="b2">菜单2</button></li>

        </ul>

    </div>

    <div>

        <div id="tab_1">

            子页面1

        </div>

        <div id="tab_2" style="display: none">

            子页面2

        </div>

    </div>

</div>

</body>

</html>

<!-- 页面,可以使用绝对或者相对路径 --> 

<link rel="prefetch" href="page2.html" /> 

<!-- 图片,也可以是其他类型的文件 --> 

<link rel="prefetch" href="sprite.png" />

从上面的HTML代码可以看出,预加载使用 <link>标签,并指定 rel="prefetch" 属性,而href属性就是需要预加载的文件路径。而Mozilla还实现了一些类似的 link rel 属性:

<link rel="prefetch alternate stylesheet" title="Designed for Mozilla" href="mozspecific.css" /> 

<link rel="next" href="2.html" />

备注: https 协议也同样支持。

何时需要预加载 

网站是否采用预加载取决于你的需求,下面是一些建议: 

- 如果一系列的页面幻灯片一样展示,那么可以预加载前后各1至3个页面. 

- 加载网站内部通用的图片 

- 在搜索结果页预加载下一页

阻止预加载 

Firefox 允许禁止预加载模式,代码如下: 

user_pref("network.prefetch-next", false)