Buildfire 插件:disableTheme 元阻止滚动

Posted

技术标签:

【中文标题】Buildfire 插件:disableTheme 元阻止滚动【英文标题】:Buildfire plugin: disableTheme meta is blocking scrolling 【发布时间】:2018-12-03 16:26:02 【问题描述】:

我在我的 Buildfire 插件的 html 中添加了 <meta name="buildfire" content="disableTheme">。它确实禁用了主题 CSS,但它现在也阻止了页面的正常滚动。这是一个简单的 HTML/CSS/JS 插件,没有外部框架。这是针对小部件的。使用 BuildFireSDK 1.15.3 版

滚动在插件测试器的本地环境中正常工作。但是当插件加载到用户的控制面板或测试应用程序加载到设备上时,它不能正常工作。

有没有办法禁用主题样式但允许正常滚动?

编辑:我从 HTML 中删除了所有额外的类、样式和脚本标签。它仍然不滚动。

<html>
<head>
    <meta name="buildfire" content="disableTheme">
    <title>Test</title>
    <script src="../../../scripts/buildfire.js"></script>
</head>
<body style="overflow-y:scroll;">
    <div style="overflow-y:scroll;">
        <div class="container" style="overflow-y:scroll;">
            <div>
                <div>
                    <h1>Test</h1>
                </div>
            </div>
            <div>
                <div>
                    <form>
                        <div>
                            <div>
                                <h2>Test</h2>
                            </div>
                        </div>
                        <div>
                            <div>
                                <h2>Test</h2>
                            </div>
                        </div>
                        <div>
                            <div>
                                <h2>Test</h2>
                            </div>
                        </div>
                        <div>
                            <div>
                                <h2>Test</h2>
                            </div>
                        </div>
                        <div>
                            <div>
                                <h2>Test</h2>
                            </div>
                        </div>
                        <div>
                            <div>
                                <h2>Test</h2>
                            </div>
                        </div>
                        <div>
                            <div>
                                <h2>Test</h2>
                            </div>
                        </div>
                        <div>
                            <div>
                                <h2>Test</h2>
                            </div>
                        </div>
                    </form>
                </div>

                <div>
                    <form>
                        <div>
                            <div>
                                <p>Test output</p>
                            </div>
                        </div>
                        <div>
                            <div>
                                <p>test value</p>
                            </div>
                        </div>

                        <div>
                            <div>
                                <p>Test output</p>
                            </div>
                        </div>
                        <div>
                            <div>
                                <p>test value</p>
                            </div>
                        </div>
                        <div>
                            <div>
                                <p>Test output</p>
                            </div>
                        </div>
                        <div>
                            <div>
                                <p>test value</p>
                            </div>
                        </div>
                        <div>
                            <div>
                                <p>Test output</p>
                            </div>
                        </div>
                        <div>
                            <div>
                                <p>test value</p>
                            </div>
                        </div>
                        <div>
                            <div>
                                <p>Test output</p>
                            </div>
                        </div>
                        <div>
                            <div>
                                <p>test value</p>
                            </div>
                        </div>
                        <div>
                            <div>
                                <p>Test output</p>
                            </div>
                        </div>
                        <div>
                            <div>
                                <p>test value</p>
                            </div>
                        </div>
                        <div>
                            <div>
                                <p>Test output</p>
                            </div>
                        </div>
                        <div>
                            <div>
                                <p>test value</p>
                            </div>
                        </div>
                    </form>
                </div>
            </div>
        </div>
    </div>
</body>
</html>

【问题讨论】:

【参考方案1】:

如果您通过元标记禁用主题,它将排除通常会注入您的插件的 CSS。根据您的插件,您可能需要添加额外的 CSS 以满足您的需求。

根据您的示例,这里有一些您可以添加的基线 CSS:

html[buildfire] 
  width: 100%;
  min-width: 100%;
  max-width: 100%;
  height: 100%;
  background: none;
  overflow: hidden !important;


html[buildfire] body 
  height: 100% !important;
  width: 100% !important;
  overflow-y: auto !important;
  -webkit-overflow-scrolling: touch !important;
  margin: 0 auto;

【讨论】:

你能澄清一下这个问题是在小部件还是控制端? 这是在小部件方面。我更新了问题以使其更清楚。 你能确认你有最新版本的SDK吗?当前最新版本是 1.15.3。 前几天刚下载的。版本 1.15.2 我相信有一个问题已在最新更新中得到修复......我建议更新到 1.15.3。

以上是关于Buildfire 插件:disableTheme 元阻止滚动的主要内容,如果未能解决你的问题,请参考以下文章

Buildfire - 是不是可以从管理控制面板导航到插件

Buildfire:是不是可以从插件中添加用户标签?

从 Widget 端获取 BuildFire 插件用户列表

Buildfire:调试 IOS 试飞

BuildFire:推送通知测试

如何在 Buildfire 中创建共享链接