12

ユーザーが画像をクリックすると、指定された iFrame のクリックも同時にトリガーされます。それは可能ですか?画像と iFrame は同じページにあります。もしそうなら、動作するコードを教えてください。

これが私がこれまでに持っているものです:

<!DOCTYPE html>
<html>
<head>
<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
</head>
<body>
<img id="image" src="https://www.google.com/images/srpr/logo4w.png">

<iframe id="iframe" src="http://www.test.com" height= "100" width="160"></iframe>

<script>
jQuery("input.image").click(function(){
   $("#iframe").click()
});
</script> 

</body>
</html>
4

2 に答える 2

19

jquery イメージ セレクタが間違っています。

変化する

jQuery("input.image")

$("#image")

その後、すべてが機能します。このフィドルでそれを見ることができます

投稿編集

問題が iFrame に含まれる要素の 1 つのクリックをトリガーすることである場合は、

$("#iframe").click()

次のようなもので:

$("#iframe").contents().find("a:first").click();

これは、メイン ページのコンテンツと iFrame のページが同じドメインにある場合にのみ機能します。そうしないと、クロス サイト スクリプティングであるため、ブラウザがアクションを阻止します。この例でわかるように、このフィドルで示されているように、XSS 防止が行われます。

于 2013-06-04T23:33:52.250 に答える
3

私はあなたがこのようなものが必要だと思います:-

$("#image").click(function(){
     var $iframe = $("#iframe").contents();
     $("body", $iframe).trigger("click");
});
于 2013-06-04T23:34:06.433 に答える