2015-12-16 241 views
0

在頁面加載時我想使默認選擇1D首先L1標籤如何點擊在這種情況下

我已經試過這樣

$(document).ready(function() { 

$("ul.menu li a:first").click(); 
}); 

$("ul.menu li").click(function() { 
    var tabclicked = $(this).find("a").attr("href"); 
    alert(tabclicked); 
}); 

但是你能告訴我爲什麼警報不顯示?

這是我的小提琴

https://jsfiddle.net/gr1L23us/3/

+0

你是不是在任何地方調用點擊事件之前。 'click()'只是在發生點擊時綁定一個事件,而不是模仿實際的點擊。 – hannebaumsaway

回答

2

這樣來做:https://jsfiddle.net/gr1L23us/5/

$(document).ready(function() { 
    $("ul.menu li a").click(function() { 
    var tabclicked = $(this).attr("href"); 
    alert(tabclicked); 
    }); 

    $("ul.menu li:first-child a").click(); 
}); 
  1. 變化事件監聽器函數的位置(這是一個與警報),並且隨後事件
  2. 使用:first-child作爲上的選擇器
  3. 變化click事件觸發上<a>

另一種可能的應用將是jquery方式:https://jsfiddle.net/gr1L23us/8/

$(document).ready(function() { 
    $("ul.menu li a").click(function() { 
    var tabclicked = $(this).attr("href"); 
    alert(tabclicked); 
    }); 

    $("ul.menu li").first().find('a').click(); 
}); 

使用.first()選擇第一個<li>.find()去deeoper在<a>的鏈接裏面點火click

1

將文檔準備調用中的點擊功能,$("ul.menu li a:first").click();之前。

$(document).ready(function() { 
    $("ul.menu li").click(function() { 
    var tabclicked = $(this).find("a").attr("href"); 
    alert(tabclicked); 
    }); 
    $("ul.menu li a:first").click(); 
}); 

jsFiddle example

1

你可以觸發點擊第一個裏,但李click事件之後,你應該做的觸發不是

$(document).ready(function() { 
    $("ul.menu > li").click(function() { 
    var tabclicked = $(this).find("a").attr("href"); 
    alert(tabclicked); 
    }); 
    $("ul.menu > li:first").trigger('click'); 
}); 

Working Demo