我该如何整合我的代码?基于JavaScript和PHP的问题

时间:2012-11-30 06:18:28

标签: php javascript jquery effects modular

我的页面非常简单直接。我首先使用DIV标记在外部PHP页面中调用我的页面中的元素。然后我隐藏主页上不需要的div,然后滑入查看想要的“页面”并隐藏不需要的内容。

我想要做的是在想要的内容中滑动并滑出当前活动/可见的内容。我知道我可以继续下去我已经开始做的事情,但整个文件会如此臃肿。有任何想法吗?谢谢!

    <link href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/themes/base/jquery-ui.css" rel="stylesheet" type="text/css"/>
  <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.5/jquery.min.js"></script>
  <script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/jquery-ui.min.js"></script>

  <script>
  $(document).ready(function(e) {
$(function(){
    $("div.design, div.marketing").hide();
    });
});

  $(document).ready(function() {

$("h3.home_button").click(function () {
      $("div.home").show("slide", { direction: "left" }, 500);
      $("div.design").hide();
      $("div.marketing").hide();
});

$("h3.design_button").click(function () {
      $("div.design").show("slide", { direction: "left" }, 500);
      $("div.home").hide();
      $("div.marketing").hide();
});

$("h3.marketing_button").click(function () {
      $("div.marketing").show("slide", { direction: "left" }, 500);
      $("div.home").hide();
      $("div.design").hide();
});


  });
  </script>

</head>

<body>

<div class="main">

    <div class="header">
        <?php include("header.php");?>
    </div>

    <div class="menu">
        <?php include("menu.php");?>
    </div>

    <div class="content">
        <?php include("content_home.php");?>
        <?php include("content_design.php");?>
        <?php include("content_marketing.php");?>

    </div>
    <div class="footer"><?php include("footer.php");?></div>

</div>

1 个答案:

答案 0 :(得分:0)

您可以使用data attributes并通过data() jquery方法访问它。

HTML中的

<h3 data-a='marketing'>marketing</h3>
<h3 data-a='design'>design</h3>
<div class='container'>
    <div style='display:none;' class='marketing'>
         marketing stuffs
    </div>
    <div class='design'>
         design stuffs
    </div>
</div>​

并在您的javascript中

$('h3').click(function(){
    type = $(this).data('a');

    $('.container div').hide();
    $('.container').find('.'+type).show();
})​

这是一个例子fiddle

此外,您正在调用ready方法两次