ユーザーが何かのリンクをコピーして貼り付け、oembedを使用してテキストボックスに貼り付けることができるようにしたいと思います。ここから、URLを識別して、それをoembedオブジェクトまたはあなたがそれと呼ぶものに変換できるようにしたいと思います。(例:Youtube Page => URL => textarea => oembed => embeded)
1205 次
2 に答える
3
于 2011-05-07T23:04:59.743 に答える
0
外部ライブラリを使用せずに単純なJSの例が必要な場合(これはFacebook用ですが、他のプロバイダーにも同じ概念を実装できます)。
$().ready(function() {
$('.facebookLink').each(function() {
var container = $(this);
var url = jQuery.trim(container.text());
container.text("");
if (url) {
$.ajax({
url: "https://apps.facebook.com/plugins/post/oembed.json/",
data: {
"url": url
},
dataType: "jsonp",
async: false,
success: function(data) {
container.html(data.html);
}
});
}
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<div class="facebookLink">https://www.facebook.com/FacebookDevelopers/posts/10152128760693553</div>
ここでドキュメントをチェックアウトできます。
https://developers.facebook.com/docs/plugins/oembed-endpoints
注:このAPIをモバイルデバイスのajax呼び出しで正しく機能させるために、「www.facebook.com」の代わりにエンドポイントドメイン「apps.facebook.com」を使用する必要があります。
https://apps.facebook.com/plugins/post/oembed.json/?url= {content-url}
これは、公式ドキュメント「www.facebook.com」で提供されているエンドポイントを使用する場合、モバイルデバイスのユーザーエージェントが、このエンドポイントが実装されていない「m.facebook.com」へのリダイレクトを強制するためです。
于 2015-11-25T23:13:11.153 に答える