モバイルデバイスに共有ボタンを表示するWebベースのプラットフォームがあります。FBに必要な正しいパラメータを渡すと、共有が事前定義されたURL、テキスト、サムネイル画像で開きます。
モバイルデバイス(特にiOSベースのiphoneおよびipad)でサイトを表示すると、FaceBookはそれがモバイルデバイスであるという事実を自動的に検出し、m.facebookに切り替わります。しかしそうすることで、私が送信したすべてのパラメータは失われる/無視されます。
これがFaceBookのバグなのか、それともm.facebookサイトに固有の新しいパラメータセットがあるのか誰かが知っていますか?f =行をm.facebook.comに変更しても、違いはないようです。
次の共有コマンドを送信します[これも、通常のWebブラウザーで正常に機能します]
function doShare() {
var d = document;
var f = 'http://www.facebook.com/share';
var l = d.location, e=encodeURIComponent;
var p = '.php?src=bm&v=4&i=1262250767&s=100&p[url]=http%3A%2F%2Fqa2%2Eclear%2Dmenu%2Ecom%2FrestHome%2Ephp%3Fr%3D12&p[images][0]=http%3A%2F%2Fqa2%2Eclear%2Dmenu%2Ecom%2Fimages%2FrestLogos%2Flogo%2D12%2Ejpg&p[title]=Clear-Menu:+Novotel+Hotel+--+Netherlands+--+Den+Haag&p[summary]=This+is+marketing+text+that+will+be+included+on+a+FB+share+feed.';
1;
try {
if (!/^(.*\.)?facebook\.[^.]*$/.test(l.host))
throw(0);
share_internal_bookmarklet(p)
}
catch(z) {
a=function() {
if (!window.open(f+'r'+p,'sharer','toolbar=0,status=0,resizable=1,width=626,height=436')) {
l.href=f+'r'+p;
}
};
if (/Firefox/.test(navigator.userAgent)) {
setTimeout(a,0);
}
else {
a();
}
}
void(0);
}