ฉันต้องการให้ผู้ใช้สามารถคัดลอกและวางลิงก์ของบางสิ่งบางอย่าง และใช้ oembed เพื่อวางลงในกล่องข้อความ จากที่นี่ ฉันต้องการระบุ URL และเปลี่ยนให้เป็นวัตถุ oembed หรืออะไรก็ตามที่คุณจะเรียกมันว่า (เช่น หน้า Youtube=> URL=> textarea=> oembed=> ฝัง)
คุณจะตรวจจับลิงก์ในข้อความและใช้ oembed/jquery เพื่อเปลี่ยนแปลงได้อย่างไร (เช่น Facebook, Twitter เป็นต้น)
คำตอบ (2)
คุณสามารถทำได้โดยใช้ปลั๊กอิน jquery oembed:
http://code.google.com/p/jquery-oembed/
หวังว่านี่จะช่วยได้ ไชโย
person
Edgar Villegas Alvarado
schedule
07.05.2011
หากคุณต้องการตัวอย่าง 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 บนอุปกรณ์มือถือ คุณต้องใช้โดเมนตำแหน่งข้อมูล "apps.facebook.com" แทน "www.facebook.com":
https://apps.facebook.com/plugins/post/oembed.json/?url={content-url}
เนื่องจากหากคุณใช้ตำแหน่งข้อมูลที่ระบุไว้ในเอกสารอย่างเป็นทางการ "www.facebook.com" ตัวแทนผู้ใช้ของอุปกรณ์มือถือจะบังคับให้เปลี่ยนเส้นทางไปยัง "m.facebook.com" ซึ่งไม่มีการใช้ตำแหน่งข้อมูลนี้
person
Yacoub Oweis
schedule
25.11.2015