首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在jquery选项卡中加载不同的页面很慢,有时甚至会崩溃。

在jquery选项卡中加载不同的页面很慢,有时甚至会崩溃。
EN

Stack Overflow用户
提问于 2014-05-15 10:25:17
回答 1查看 847关注 0票数 0

我的老板希望不同的过程(最初是单独的页面)出现在选项卡上。

无论如何,我使用jquery选项卡

http://jqueryui.com/tabs/

我的代码

jquery

代码语言:javascript
复制
    <script type="text/javascript">
$(document).ready(function()
{ 
$("#tabs-1").load("transaction.php");
$("#tabs-2").load("book.php");
$("#tabs-3").load("schedule.php");
});
</script>

html

代码语言:javascript
复制
<ul>
<li><a href="#tabs-1">Transaction</a></li>
<li><a href="#tabs-2">Book</a></li>
<li><a href="#tabs-3">Schedule</a></li>
</ul>
<div id="tabs-1">
</div>
<div id="tabs-2">
</div>
<div id="tabs-3">

每个页面都会提取mysql数据库中的数据。问题是,book.php有大量的数据,所以加载速度很慢,有时浏览器会崩溃。

这种实现是可能的还是我应该解释一下,不建议使用选项卡,应该使用单独的页面来显示?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-05-15 10:30:41

您可以做的是让book.php只在单击选项卡2时加载。

代码语言:javascript
复制
$("#tabs-2").click(function(){
    $("#tabs-2").load("book.php");
});

这应该有助于阻止它立即崩溃。如果没有帮助,您将需要优化您的查询。

您也可以尝试使用ajax。

将其放入文档加载中,希望它能够将book.php的内容加载到选项卡中。

代码语言:javascript
复制
  $.get( "book.php", function(book) {
    $("#tabs-2").html(book);
  });

Jquery样本

代码语言:javascript
复制
$.ajax({
   type: "POST",
   url: "page_url",
   data: $("#advserc").serialize() + "&pagenum=" + page, // i sent the page through with it
  beforeSend:function(){  // this unhides a div with gif loading image in it.
        //show gif here, eg:
        $("#loading").show();

    },
    complete:function(){
        //hide gif here, eg:
        $("#loading").hide(); // this hides the div
    },
   success: function(data){
      $("#content-container").html(data); // here i fill the div with the dat from the php page
   }
});
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23675553

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档