Browse Source

修复一个不能自动打开当前URL指定页面的bug

star7th 9 years ago
parent
commit
ba7bf2730b

+ 3 - 0
Application/Home/Controller/ItemController.class.php

@@ -73,6 +73,8 @@ class ItemController extends BaseController {
     public function show(){
         $this->checkLogin(false);
         $item_id = I("item_id/d");
+        $current_page_id = I("page_id/d");
+
         $keyword = I("keyword");
         $login_user = session("login_user");
         $uid = $login_user['uid'] ? $login_user['uid'] : 0 ;
@@ -118,6 +120,7 @@ class ItemController extends BaseController {
 
         $ItemCreator = $this->checkItemCreator($uid , $item_id);
 
+        $this->assign("current_page_id" , $current_page_id);
         $this->assign("keyword" , $keyword);
         $this->assign("ItemPermn" , $ItemPermn);
         $this->assign("ItemCreator" , $ItemCreator);

+ 2 - 2
Application/Home/View/Item/show.html

@@ -105,7 +105,7 @@
       </div>
 
       <input type="hidden" id="item_id" value="{$item.item_id}">
-      <input type="hidden" id="page_id" value="{$page_id}">
+      <input type="hidden" id="current_page_id" value="{$current_page_id}">
       <input type="hidden" id="base_url" value="__APP__">
 
 
@@ -160,4 +160,4 @@
 <script src="__PUBLIC__/js/jquery.goup.min.js"></script>
 <script src="__PUBLIC__/js/jquery.hotkeys.js"></script>
 
-<script src="__PUBLIC__/js/item/show.js?v=1.12third"></script>
+<script src="__PUBLIC__/js/item/show.js?v=1.12thirdtt"></script>

+ 6 - 9
Public/js/item/show.js

@@ -2,18 +2,17 @@
 $(function(){
 
   //自动根据url把当前菜单激活
-  var page_id = GetQueryString('page_id');
+  var current_page_id = $("#current_page_id").val();
   //如果中没有指定page_id,则判断有没有父目录为0的页面,默认打开第一个
-  if(!page_id) {
-    page_id = $(".doc-left li").children("a").attr("data-page-id");
+  if(!current_page_id) {
+    current_page_id = $(".doc-left li").children("a").attr("data-page-id");
   };
-  if(page_id !=null && page_id.toString().length>0)
+  if(current_page_id !=null && current_page_id.toString().length>0)
   {
-    var str = 'page_id='+page_id;
     $(".doc-left li").each(function(){
-      url = $(this).children("a").attr("href");
+      page_id = $(this).children("a").attr("data-page-id");
       //如果链接中包含当前url的信息,两者相匹配
-      if (url && url.indexOf(str) >= 0 ) {
+      if (page_id !=null && page_id.toString().length>0 && page_id == current_page_id) {
         //激活菜单
         $(this).addClass("active");
         //如果该菜单是子菜单,则还需要把父菜单打开才行
@@ -21,8 +20,6 @@ $(function(){
             $(this).parent('.child-ul').show();
             $(this).parent('.child-ul').parent('li').children("a").children('i').attr("class","icon-chevron-down");
         };
-        //获取对应的page_id
-          page_id = $(this).children("a").attr("data-page-id");
           if (page_id != '' && page_id !='#') {
               change_page(page_id)
           };