3

ページの読み込み中にアンカータグのjavascript関数をトリガーすることは可能ですか?

これが私のフィドルです

<a  id="WebTree" href="javascript:alert('testing')">click me</a>


$(document).ready(function(){
    $('#WebTree').trigger('click');
    //$('#WebTree').click();
    // after the page load I'm expecting to see the alert but it's not working
});

ページが読み込まれた後にアラートが表示されることを期待していますが、そうではありません

編集

さて、私がこの質問をしている理由を簡単に説明します。

これは、SharePointによって動的に生成された元のリンクです。

<A id=ctl00_PlaceHolderLeftNavBar_ctl01_WebTreeViewn1 href="javascript:TreeView_PopulateNode(ctl00_PlaceHolderLeftNavBar_ctl01_WebTreeView_Data,1,ctl00_PlaceHolderLeftNavBar_ctl01_WebTreeViewn1,ctl00_PlaceHolderLeftNavBar_ctl01_WebTreeViewt1,ctl00_PlaceHolderLeftNavBar_ctl01_WebTreeViewt1i,' ','TaxonomyMetadata','Pages\\TaxonomyMetadata','t','30:FieldNameNode:e305128c-217b-47b4-81b9-db0c1e59f98f:3b529925-3610-485a-9133-bc958f7ab28e:dbf365da-565b-41ca-966d-f9bf29d9b2cf:30|ListNode|e305128c-217b-47b4-81b9-db0c1e59f98f|3b529925-3610-485a-9133-bc958f7ab28e|ea06a686-46c5-4470-a1ab-4fe4341589c8','tt')">

    <IMG style="BORDER-RIGHT-WIDTH: 0px; BORDER-TOP-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px" alt="Expand TaxonomyMetadata" src="/_layouts/images/MDNCollapsed.png">
</A>

結論私はアンカータグを制御できません。

4

4 に答える 4

6

どうですか:

$(document).ready() {
    var code = $('#WebTree').attr('href');
    eval(code);
}
于 2012-09-13T09:49:59.433 に答える
3

onclickの代わりに属性を使用する必要がありhrefます。hrefプログラムで要素のクリックをトリガーしても、属性はアクティブになりません。

<a id="WebTree" onClick='javascript:alert("testing")' href='#'>click me</a>

ページの場所を変更したい場合は、を使用できますlocation.href

$('#webTree').click(function(){
   location.href = this.href
}).click()

http://jsfiddle.net/qnN2d/

于 2012-09-13T09:44:01.700 に答える
1

イベントバインディングをjavascriptに移動します。

<a  id="WebTree" href="#">click me</a>

$(document).ready(function(){
    $('#WebTree').click(function(){
        alert("testing");
    });
    $('#WebTree').trigger('click');
});

ソース

控えめなJavaScriptを参照してください

于 2012-09-13T09:43:16.323 に答える
0

だからあなたはこの方法を試すことはできません

$(document).ready(function(){
    $('#WebTree').trigger('click');
    $('#WebTree').click(function() {
    alert(1);
    });
    // after the page load I'm expecting to see the alert but it's not working
});

 $(window).load(function () {
        $('#WebTree').click();
 });​
于 2012-09-13T09:43:08.907 に答える