StumbleUpon發佈了一個Widget script和documents如何使用它來插入一個stumble的按鈕(他們稱之爲徽章),進入一個網站。如何創建自定義StumbleUpon按鈕?
您可以使用their online tool爲按鈕生成標記。它看起來像這樣:
<!-- Place this tag where you want the su badge to render -->
<su:badge layout="2" location="http://example.com"></su:badge>
<!-- Place this snippet wherever appropriate -->
<script type="text/javascript">
(function() {
var li = document.createElement('script');
li.type = 'text/javascript';
li.async = true;
li.src = 'https://platform.stumbleupon.com/1/widgets.js';
var s = document.getElementsByTagName('script')[0];
s.parentNode.insertBefore(li, s);
})();
</script>
該腳本元素只是一種延遲加載widgets.js的東西。僅僅從看它,我想它可以通過掃描文檔中的<su:badge>
元素,並用iframes
替換它們。然後,iframe自己從stumbleupon中獲取它們的源內容,如下所示:http://badge.stumbleupon.com/badge/embed/4/?url=http%3A%2F%2Fexample.com
。
的iframe呈現視覺上是這樣的:
或者StumbleUpon按鈕是第二之一。我顯示其他的比較。正如你所看到的,StumbleUpon的渲染看起來與其他人不同。蘇讓他們的按鈕看起來像一個「徽章」,而其他社交分享小部件看起來像......呃....一個按鈕。
我試圖讓Stumbleupon小部件看起來像一個按鈕。我很確定這是可能的。例如,mashable是否可以(example)。這裏是什麼樣子:
正如你所看到的,StumbleUpon公司按鈕看起來像一個按鈕。這不是一個徽章。 Mashable沒有使用su:badge
的東西 - 他們已經制作了他們自己的<a>
標籤,並對其進行了設計。
視覺渲染不是問題;我可以弄清楚如何讓跨度看起來像一個按鈕,沒問題。單擊標籤或跨度時發生問題。看來,我認爲,與StumbleUpon公司使用iframe的東西,它會調用這個URL提交頁面共享:
http://www.stumbleupon.com/badge/?url=http%3A//example.com/whatever HTTP/1.1
iframe的使用JavaScript的window.open
,請求,並限制調整大小等。這就是它如何工作的可馴服。在出現的窗口看起來是這樣的:
這也是混搭頁面做什麼,儘管它不使用iframe中。 Mashable頁面包含JavaScript,它直接從主可琢磨頁面內打開「stumbleupon submit」窗口。
但是當我嘗試同樣的事情,從我頁面,小的固定窗口會從StumbleUpon公司302重定向,然後又是302,最終它指向
...不允許分享鏈接。
這是一個很長的故事,但:
沒有任何人有任何見解,我怎麼能說服StumbleUpon公司,讓我分享一個鏈接或URL,從沒有包含在iframe中的按鈕?
什麼是mashable的祕密?