だから、それは、これはあなたの問題を解決する可能性は低いですが、実際に問題を評価するためには実際のコードを掲示していない、と私はできませんどのFacebookのAPIを使用しているのか正確に把握することができます.BUT-
クリックイベントやiframeの幅などの情報をキャプチャしてオフセットを比較するだけでは問題ありませんか?
$("#social-container").click(function(e){
var facebookSelector = $(iframe selector here);
var h = $(window).height() - facebookSelector.height();
var w = $(window).width() - facebookSelector.width();
if (e.clientY && e.clientX){
//Set the top based on where mouse click occured
facebookSelector[0].style.top = (e.clientY > h) ? h + "px" : e.clientY + "px";
//Set the left based on where mouse click occured
facebookSelector[0].style.left = (e.clientX > w) ? winWidth-iframeWidth + "px" : e.clientX + "px";
}
}
verbose-
$("#social-container").click(function(e){
var facebookSelector = $(iframe selector here);
var iframeHeight = facebookSelector.height();
var iframeWidth = facebookSelector.width();
var winHeight = $(window).height();
var winWidth = $(window).width();
if (e.clientY && e.clientX){
//Set the top based on where mouse click occured
if (e.clientY > (winHeight-iframeHeight)){
facebookSelector[0].style.top = winHeight-iframeHeight + "px";
}
else {
facebookSelector.style.top = e.clientY + "px";
}
//Set the left based on where mouse click occured
if (e.clientX > (winWidth-iframeWidth)){
facebookSelector[0].style.left = winWidth-iframeWidth + "px";
}
else {
facebookSelector[0].style.left = e.clientX + "px";
}
}
}
上記の例以下(実際には、またはあなたが好きな)あなたはまた、代わりにクリック位置のボタンのようにFacebookの位置を使用することができます - のようなもの。
警告と補遺:
1。あなたのiframe(または何でも)のIDがFacebookによって動的に生成され、あなたがそれを制御できない場合、これは簡単には機能しません
2. Ifボタンがiframeにあり、あなたのコンテナまでのイベントのバブリングを防ぎます。
3.この例では、現在jQueryが必要です。
4.あなたのiframeは(または何でも)それはおそらくオーバーフロー属性を持つ問題だposition: absolute
またはposition: fixed
コードなしでヘルプを得ることは本当に期待されますか? – Jawad
問題を示すURLを投稿してください。実行可能な解決策を提供しようとします。 –
@Jawed、これはFacebookの「Like」ボタンで、iFrameとして提供されています...あなたはどのようなコードを期待していますか?あなたは私の容器が欲しいですか? '