私はGoogle+を非常に頻繁に使用していますが、非常に頻繁に行っていることの1つは、左側のサイドバーにある[その他]ボタンをクリックして、非表示になっているサークルにアクセスすることです。ページの読み込み時に[その他]リンクをアクティブにするユーザースクリプトを作成しようとしています。これは、「More」要素までのサイドバーのDOM構造です。
<div class="a-b-la-A">
<h2 class="a-za">Navigation</h2>
<a href="/welcome" target="_top" class="d-h a-b-h-Jb a-la-h a-la-aH ">Welcome</a>
<div class="a-la-Dd"></div>
<a href="/stream" target="_top" class="d-h a-b-h-Jb a-la-h a-la-aH a-la-h-Pa">Stream</a>
<div class="a-la-h-ga"><a href="/stream/circles/p5653c3hhy60aadf997" target="_top" class="d-h a-b-h-Jb a-la-h a-la-Rb-h a-b-la-Rb-h">Friends</a></div>
<span role="button" class="d-h a-b-la-gc-h a-la-h a-la-hA" tabindex="0">More<span class="a-b-la-bw a-la-tb-q">▾</span></span>
...そしてこれが私が取り組んでいるスニペットです:
$('div.a-b-la-A span').filter('[role="button"]:contains("More")').trigger('click');
'More'要素を適切に選択して操作できます。これが、黄色に設定されたbg-colorです。
$('div.a-b-la-A span').filter('[role="button"]:contains("More")').css({'background-color': 'yellow'});
...しかし、要素に関連付けられた機能をアクティブ化することはできません。私が試したこと:
- trigger('click')の代わりに.click()を使用してみました
- FirebugとEventSpyを使用して、クリック時にトリガーされる関数を特定しようとしましたが、成功しませんでした
- 'click'イベントをトリガーする代わりに、.mousedown()とtrigger('mousedown')を試しました
他のアイデアはありますか?