我创建了一个 JavaScript 网络浏览器游戏。 HTML 页面,Game.html
, 在文件夹内 Game
引用存储在子文件夹中的其他几个 JS/jQuery/CSS 文件。
我只想添加 Game
文件夹,其中包括 Game.html
文件及其所有相关文件作为页面添加到 SharePoint 2013。这样人们就可以在 SP 2013 上玩游戏了。
我试过以下方法:
点击了
Add Page
.这为我提供了母版页,并且只允许我添加 Web 部件。所以我尝试添加一个内容编辑器 Web 部件并尝试引用Game.html
页面,但我无法引用其余所需的 JavaScript。然后我将我的驱动器直接映射到服务器并上传了我的
Game
文件夹到服务器。从那里,我创建了Game.html
的母版页在设计管理器中...这不起作用。
有没有简单的方法来添加我的 Game.html
页面到 SP 2013 并让它引用所有必需的 JS 文件并实际运行游戏?
谢谢
编辑:好的,这是我所做的:
1) 我将所有 Assets 上传到http://server/SiteAssets/Forms/AllItems.aspx
, 包括主要 Game.html
文件,以及支持图片和 JS 文件。
2) 更改了 Game.html
中的所有引用匹配游戏所在的同一文件夹:
<script src="http://Server/SiteAssets/createjs.js"></script>
<script src="http://Server/SiteAssets/bootstrap.js"></script>
<script src="http://Server/SiteAssets/jquery.js"></script>
etc...
3) 去了Settings -> Add a page
,现在位于 http://Server/Pages/Game.aspx
.
4) 向新页面添加了内容编辑器 Web 部件 (CEWP),标题为 Game
.编辑 CEWP 以获得 Game.html
文件位于 SiteAssets
.
5) Game.html
似乎渲染没问题:
但是,当我在文本框中提交我的名字时,它应该会运行 JavaScript 游戏。但它不起作用。我知道它正在运行 JavaScript,因为我这样做了:
Game.html:<body onload="test()">
Game.html:function test() { alert("working"); }
输出“工作”。
没有控制台输出错误。而 jQuery 和其余代码似乎渲染了一秒钟,闪烁,然后返回到静态 HTML...
所以最初来自
Game.html
的 HTML 文本字段和按钮已加载:当我输入我的名字并按下回车键时...它会调用
init()
,并加载 jquery/createJS 等但一秒钟后所有内容都消失了,只显示来自
Game.html
的静态 HTML
有什么想法吗?
最佳答案
在 Sharepoint 页面中运行我们自己的应用程序时,我们遇到了各种各样的问题。
最后我们采用了完全不同的方法。我们只需将该应用程序设置为同一服务器上的独立站点,然后将其作为 Web 部件包含到共享点页面中。 (本质上是一个 iframe)。
这绝对值得一试,因为它完全消除了与共享点拦截请求等相关的麻烦。
关于javascript - SharePoint 2013 - 添加使用其他文件夹中的文件的自定义 Web 应用程序/页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21339456/