小编Eru*_*tar的帖子

Chrome扩展程序:无法加载javascript文件

在此处发布了有关Chrome扩展程序的其他问题.
但我还有一个关于扩展的问题.我只需要一个内容脚本来修改Tumblr-Dashboard,没有背景页面或其他东西,对吗?

这是manifest.json文件:

{
    "name": "Tumblr - Tiled Dashboard",
    "version": "0.0.54",
    "manifest_version": 2,
    "description": "This extension modifies the look of your Tumblr dashboard.",
    "icons": {
        "16": "images/icon_16.png",
        "48": "images/icon_48.png",
        "128": "images/icon_128.png"
    },
    "content_scripts": [
        {
            "matches": [ "*://*.tumblr.com/dashboard" ],
            "css": [ "styles.css" ],
            "js": [ "jquery-2.1.3.min.js", "masonry.min.js", "code.js" ]
        }
    ],
    "homepage_url": "mypage",
    "author":  "myname"
}
Run Code Online (Sandbox Code Playgroud)

首先,我问这是否正常?我已经阅读了很多关于该manifest.json文件的内容,当我在本地尝试扩展时,一切似乎都运行良好.但是当我打包扩展并上传它时,有两个问题:

  1. 我搜索它时找不到扩展名
  2. 当我使用链接查找扩展名,并且我想安装它(在2台不同的PC上试过)时,我收到错误,告诉我jquery-2.1.3.min.js文件无法加载.因此,我更改了我的JavaScript文件的顺序以测试它是否是与jQuery文件相关的问题,但是masonry.min.js作为数组中的第一个文件导致了相同的错误.

为什么会这样?是manifest.json文件好吗?我需要一些特殊权限吗?

编辑: 这是我尝试从Chrome网上应用店安装扩展程序时的屏幕截图(我也无法通过搜索找到它).

我尝试从Web Store安装软件包时的屏幕截图

manifest tumblr google-chrome-extension

6
推荐指数
1
解决办法
5025
查看次数

防止删除Tumblr仪表板上的DOM元素

注意:这是我之前的一个后续问题.

我决定通过#posts元素内的扩展程序将帖子显示在仪表板上.现在我的问题是Tumblr在滚动时自动删除帖子的内容.

以下是删除前正常帖子的示例:

<li class="post_container" data-pageable="post_110141415125">
    <div class="post post_full ..." [...]>
        <!-- ... -->
    </div>
</li>
Run Code Online (Sandbox Code Playgroud)

删除其内容后,同一帖子:

<li class="post_container" data-pageable="post_110141415125" style="border-radius: 3px; height: 207px; width: 540px; background-color: rgb(255, 255, 255);">
</li>
Run Code Online (Sandbox Code Playgroud)

由于我的扩展程序将帖子重新定位为类似于pinterest的布局,因此删除帖子的内容会影响整个布局.是否可以阻止Tumblr仪表板移除每个内部的DOM元素.post

编辑:

removeChild在我的内容脚本中为该方法添加了这个注入代码:

function addScript(){
    var script = document.createElement('script');  
    script.id = 'newRemoveChildScript'; ///just to find is faster in the code
    script.src = chrome.extension.getURL("injectedCode.js");
    $($('script')[0]).before(script); ///Script is indeed present, I checked that
} …
Run Code Online (Sandbox Code Playgroud)

javascript tumblr google-chrome-extension

4
推荐指数
1
解决办法
1072
查看次数