ボタンを自動クリックするスクリプトは
setInterval( function() {
var load =document.getElementsByClassName('load-more')[0];
if(load.style.display != 'none') load.click();
});
という感じで書けて動作したのですが、例えば
if(load.style.display != 'none') load.click();
},10000);
などとした場合、表示されていない下の方にボタンがある場合でも延々とクリックされてしまいますよね?
load-moreのボタンが画面内にある時だけ自動クリックさせたいのですが、そのようなことは可能でしょうか?
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
こんにちは
Greasemonkeyはまったく存じませんが・・・
>画面内にある時だけ自動クリックさせたいのですが、
>そのようなことは可能でしょうか?
可能だと思います。
対象要素(var load)のドキュメント内の位置を取得して、
・そのtop位置が画面のscroll量以上で
・bottom位置が(画面のscroll量 + 表示画面の高さ)より小さければ
要素全体が表示されていると判断できます。
※ 横方向にもスクロールする場合は、横方向のチェックも必要です
※ 要素が全部表示されていなくても、少しでも見えているという場合は、上記と似た計算で判断可能でしょう。
上記の判断で、クリックするかどうか分岐すればよいのでは?
ただし、ご提示のスクリプトではInterval処理を止める記述がないみたいなので(どこか他にあるのかも知れませんが)、クリックするしないに関わらず処理自体は延々と繰り返されます。
遅延時間を指定したとしても、クリックしてから指定時間経っても同じような表示状態だと、条件判断を追加していても、やはり連続クリックが発生する可能性はあるでしょう。
No.1
- 回答日時:
> if(load.style.display != 'none') load.click();
なら
if(load.style.display != 'none'){
load.style.display = 'none';
load.click();
}
と一度クリックしたら隠してしまうとか
if(load.style.display != 'none' && !load.getAttribute('data-flg')){
load.setAttribute('data-flg',1);
load.click();
}
のように、フラグを立ててやればよいのでは?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
- ・ゆるやかでぃべーと タイムマシンを破壊すべきか。
- ・歩いた自慢大会
- ・許せない心理テスト
- ・字面がカッコいい英単語
- ・これ何て呼びますか Part2
- ・人生で一番思い出に残ってる靴
- ・ゆるやかでぃべーと すべての高校生はアルバイトをするべきだ。
- ・初めて自分の家と他人の家が違う、と意識した時
- ・単二電池
- ・チョコミントアイス
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
マイページの出し方が分かりま...
-
ワードで直径4cmの円を作成...
-
PCのグーグルマップで現在地が...
-
アイコンに、四角い枠が出来て...
-
PC上からメールのアイコンが消えた
-
エクセルでセルをクリックする...
-
ワードのハイパーリンク、Ctrl...
-
E-mailの署名について
-
リンクに飛べる様にする際 「C...
-
ドイツの町が見れるライブカメラ
-
パソコンの画面上に黒い四角が...
-
windows11フォトビューア
-
windows2000で x86かx64の確認...
-
ウィルスバスター2004のファイ...
-
safariでクリックすると画面を...
-
ヤフー。トップページに戻ると1...
-
タスクバーにあるマカフィーの...
-
QRコード読み取り後、一発でメ...
-
ウインドウ10で機内モードをオ...
-
Outlook Expressの設定後、毎回...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
マイページの出し方が分かりま...
-
ワードで直径4cmの円を作成...
-
アイコンに、四角い枠が出来て...
-
ワードのハイパーリンク、Ctrl...
-
PCのグーグルマップで現在地が...
-
ヤフー。トップページに戻ると1...
-
E-mailの署名について
-
PC上からメールのアイコンが消えた
-
パソコンの画面上に黒い四角が...
-
リンクに飛べる様にする際 「C...
-
ワードで作った文章を筆ぐるめ2...
-
日本語入力がひっきりなしにフ...
-
QRコード読み取り後、一発でメ...
-
エクセルでセルをクリックする...
-
windows2000で x86かx64の確認...
-
クリック?クイック?
-
C# MenuStripを開いた状態にしたい
-
WORDでチェックボックスにチェ...
-
Excelの表を作り住所録で電話番...
-
スペースキーが効かない
おすすめ情報