假設這是合法的(如果您對此腳本進行了修改,將此腳本嵌入到您的站點中可能不合法),我們可以使用online JavaScript beautifier對腳本進行解壓縮。結果是這樣的:
http://www.jsfiddle.net/T4Rrh/
我們感興趣的比特是最後for
循環在那裏,每個按鈕進行處理。我們可以安全地去除大部分的圖像生成和協議嗅探(不必要的實踐中,通過的方式)來減少碼的重量:
var type = (button["button"] || "button-1.png").split("-");
var prefix = ("https:" == document.location.protocol) ? "https://mixi.jp/" : "http://static.mixi.jp/";
if (!type || type.length < 2) type = ["button", "1.png"];
if (type[1].indexOf(".") == -1) type[1] += ".png";
var src = (type[0] == "button") ? [prefix, "img/basic/mixicheck_entry/bt_check_", type[1]] : (type[0] == "icon") ? [prefix, "img/basic/mixicheck_entry/icon_mixi_", type[1]] : [prefix, "img/basic/mixicheck_entry/bt_check_1.png"];
src = src.join("");
和
var img = document.createElement("img");
img.setAttribute("src", src);
img.style.border = "0";
var element = button.element;
for (var j = element.childNodes.length - 1; j >= 0; j--) {
element.removeChild(element.childNodes[j]);
}
element.appendChild(img);
應當既除去。然後,您可以縮小並保存代碼,然後自己在頁面中提供它。下面是清理代碼如下所示:http://www.jsfiddle.net/XrYLX/
第二種方法:
使用CSS,我們首先刪除的JavaScript其刪除按鈕元素的所有子節點的一部分,所以文裏面的按鈕不刪除:
for (var j = element.childNodes.length - 1; j >= 0; j--) {
element.removeChild(element.childNodes[j]);
}
我們再申請一些CSS隱藏圖像:
.mixi-check-button img {
display: none;
}
參見:http://www.jsfiddle.net/T4Rrh/1/。
@Yi Jiang - 感謝您編輯這個問題,因爲我無法添加按鈕,因爲我是新的stackoverflow。我試過這個,並且「唯一的文本url」出現了,但它沒有與SNS連接,導致「無數據」錯誤。上面的代碼中是否有需要發送到此SNS的內容? – tokyowp 2011-01-10 09:39:02