2013-10-08 36 views
0

我有以下导航:在浏览页面触发jQuery的Click事件

<ul id="chooseType" class="chooseType"> 
<li><a id="active" href="#" title="" class="active selected">Active</a></li> 
<li><a id="inactive" href="#" title="" class="inactive">Inactive</a></li> 
</ul> 

有了这个脚本:

 <script th:inline="javascript"> 
          /*<![CDATA[*/ 
          $(document).ready(function() { 

           $('#active').click(function(){ 
            $('#active').addClass('selected'); 
            $('#inactive').removeClass('selected'); 
            $('#activeList').show(); 
            $('#inactiveList').hide(); 
           }); 
           $('#inactive').click(function(){ 
            $('#active').removeClass('selected'); 
            $('#inactive').addClass('selected'); 
            $('#activeList').hide(); 
            $('#inactiveList').removeClass('hidden'); 
            $('#inactiveList').show(); 
           }); 
          }); 
          /*]]>*/ 
     </script> 

我需要能够直接导航到非活动视图点击单独页面上的链接。如何触发('#inactive')。点击从不同页面上的链接访问页面?为了空间和简单性,不包括要显示/隐藏的div。

编辑:失踪});为了清楚起见,我无意中删除了一些不相关的代码。

+0

只是做'$( '#无效')。点击()'或'$( '#无效') .trigger('click')' – PSL

+1

你似乎缺少'});' –

+0

你能提供一些关于什么指定“单独页面”的更多细节吗?你只是试图在加载页面时触发'('#inactive')。click'处理程序,或者仅在页面由于*特定链接*被加载而被加载时触发?在后一种情况下,传递url参数并在页面加载时检查它的存在可能很简单。 –

回答

1

IMO最简洁的方法是从.click()处理程序中提取匿名函数,为它们命名,然后绑定#inactive函数以在加载和.click()上运行,如下所示:

    $(document).ready(function() { 
         var active = function(){ 
          $('#active').addClass('selected'); 
          $('#inactive').removeClass('selected'); 
          $('#activeList').show(); 
          $('#inactiveList').hide();}; 
         var inactive = function(){ 
          $('#active').removeClass('selected'); 
          $('#inactive').addClass('selected'); 
          $('#activeList').hide(); 
          $('#inactiveList').removeClass('hidden'); 
          $('#inactiveList').show();}; 

         $('#active').click(active); 
         $('#inactive').click(inactive); 
         inactive(); 
        }); 
+0

在每个函数结束时输入错字,看看关闭的')'。我同意,这是最干净的方式。 –

+0

固定,谢谢! –

0

如果您点击从特定位置到页面的链接,为页面提供GET值。

比方说,以下是从特定的位置有问题您当前的锚点元素

<a href = "mydestinationpage.php">Click me</a> 

将其更改为

<a href = "mydestinationpage.php?from=1">Click me</a> 

在目标页面,抢GET值

$from_value = $_GET["from"]; 

然后查找您的JavaScript中的值

var from_value = "<?php echo $from_value; ?>"; 
if(from_value != "" && from_value != null){ 
    $('#active').removeClass('selected'); 
      $('#inactive').addClass('selected'); 
      $('#activeList').hide(); 
      $('#inactiveList').removeClass('hidden'); 
      $('#inactiveList').show(); 
    } 

如果提供了GET值,则会执行有问题的JavaScript代码。如果没有GET价值,什么都不会发生

我假设你正在使用PHP用此溶液

相关问题