2012-09-14 47 views
2

我想讓用戶在我的網站上添加Slideshare演示文稿和Youtube視頻。我不想讓他們經歷尋找嵌入代碼的麻煩,我想自己生成它,所以我確定了它的大小和協議,他們只需要複製他們在地址欄中看到的URL。如何從完整的URL獲取Slideshare的嵌入ID?

使用Youtube很容易,我只需提取視頻ID。使用Slideshare看起來並不容易,因爲完整的URL不包含嵌入演示文稿時使用的ID。

所以基本上,我想知道如何從這個

http://www.slideshare.net/guest196e23/joel-spolsky-100-things-keynote

http://www.slideshare.net/slideshow/embed_code/4053571

甚至更​​準確地說,從「guest196e23 /喬爾 - 斯波斯基-100-東西基調「改爲」4053571「

我想要一個客戶端(javascript)解決方案。

感謝您的幫助!

+3

你必須加載給定的URL頁面並在服務器端解析它(例如:用PHP)。在「」標籤內容中查找此HTML標籤: 。將'https:'協議轉換爲'http:'。 – Jay

+0

感謝Jay爲這個指針。我不想通過添加ajax請求來增加複雜性,所以我現在向用戶多花點功夫。他們必須複製嵌入代碼,並從那裏提取id。它現在可以做到,但SlideShare的工作方式像Youtube一樣真的很酷! – Melanie

回答

0

您可以輕鬆地做到這一點如何使用Node.js和JSDOM

jsdom.env(
    "http://www.slideshare.net/DonaldDerek/build-your-own-raspitv-with-nodejs-socketio", 
    ["http://code.jquery.com/jquery.js"], 
    function (errors, window) { 
    var $ = window.$ , 
     presentation = $(".twitter_player").attr('value') 

    if(presentation === undefined){ 
     res.json({error:true}) 
    } 
    else{ 
     res.json({presentation_embed:presentation, error:false}) 
    } 
    } 
) 

然後,只需抓住你的Ajax回調內部的響應。