1

Google Blogger 使用 javascript 在小部件或可编辑区域上为管理员放置一个快速编辑图标。

这是 HTML:

<a class="quickedit" href="xxxxxx" onclick="return _WidgetManager._PopupConfig(document.getElementById(&quot;BlogArchive1&quot;));" target="configBlogArchive1" title="Edit">
<img alt="" height="18" src="http://img1.blogblog.com/img/icon18_wrench_allbkg.png" width="18">
</a>

我正在尝试用 Font Awesome Icon 替换该图像。这是我使用的 jQuery:

$('a.quickedit img').replaceWith('<i class="icon-wrench"></i>');

原图还在,console.log里也没有相关的错误,为什么还是不行呢?顺便说一句,我正在使用该$(document).ready功能,版本为 1.7.1。

编辑:我还注意到使用它会破坏页面上的所有其他 jQuery 脚本。所以可能会发生冲突。

这是没有我要添加的脚本的所有内容:

<script type='text/javascript'>
  $(document).ready(function() {
    $(&quot;.menu-toggle&quot;).click(function (e) {
        $(this).next(&#39;ul&#39;).slideToggle(&quot;fast&quot;);
    });
    $(&quot;#LinkList1 ul li&quot;).click(function (e) {
        $(this).find(&#39;ul&#39;).slideToggle(&quot;fast&quot;);
    });
    $(&quot;body a, .camera_prev, .camera_next, .camera_pag li&quot;).hover(function(){
        link_audio.play();
    },
    function(){
        link_audio.load();
    });
    $(window).scroll(function(){
        if ($(this).scrollTop() &gt; 100) {
            $(&#39;.scrollup&#39;).fadeIn();
        } 
        else {
            $(&#39;.scrollup&#39;).fadeOut();
        }
    }); 
    $(&#39;.scrollup&#39;).click(function(){
        $(&quot;html, body&quot;).animate({ scrollTop: 0 }, 600);
        return false;
    });
  });
</script>

再次编辑:无论我尝试什么,似乎所有其他脚本都中断并且不再运行,并且在 console.log 中没有视觉错误或错误。在此处查看有问题的模板/站点:http: //xarpixels-revitalize-template.blogspot.com/

仅供参考,只有管理员甚至可以看到 .quickedit 图标。

4

3 回答 3

1

您可以尝试其他方式。像这样 :

$('a.quickedit img').after('<i class="icon-wrench"></i>').remove();

希望这可以帮助..

于 2013-07-12T02:44:25.043 回答
1

由于我没有完全理解这个要求,但是在其他人理解的情况下,我已经修复了代码,请看看这个

小提琴演示

css和js代码的变化

$('a.quickedit').append('<i class="icon-wrench"></i>');

标记为正确,如果它解决了您的问题

于 2013-07-12T04:27:45.903 回答
0

将此添加到您的 CSS 类中。您需要它,因为标签 i 是一个内联 HTML 元素。看看这个http://jsfiddle.net/r3GgM/

    .icon-wrench{
     ...
    display:block;
    width: xxxx;
    height: nnnn;
    }
于 2013-07-12T03:31:09.807 回答