下面的Javascript有一个默认的图像,但我想显示这个链接的文本“只有文本url”,而不是这个按钮在这个链接http://developer.mixi.co.jp/wp-content/uploads/2010/09/bt_check_1.gif,这个脚本的默认设置。这个是可能的吗?

<div>
<a href="http://mixi.jp/share.pl" class="mixi-check-button" data-key="some-data-key" data-url="http://someurl.com">only text url </a>
<script type="text/javascript" src="http://static.mixi.jp/js/share.js"></script>
</div>发布于 2011-01-09 23:53:00
假设这是合法的(如果您对其进行修改,则在您的站点中嵌入此脚本可能是非法的),我们可以使用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/
发布于 2011-01-09 23:47:22
将该脚本复制到您的站点,并删除最后一行开头的element.appendChild(img);。
https://stackoverflow.com/questions/4639319
复制相似问题