将javascript注入头部并确保即使在刷新后它也会存在

时间:2014-03-21 07:46:05

标签: javascript jquery html css code-injection

我们已经获得了基于云的人才管理企业解决方案。其中一个功能是能够在主欢迎页面(主页)上添加带脚本的HTML小部件。

欢迎页面UI可以很好地自定义,但是一旦导航到另一个屏幕,欢迎页面就会消失。

我们做了一个简单的测试,在一个HTML Widget上添加jQuery脚本,以更改屏幕上另一个特定可点击URL元素的URL,它就像一个魅力。我们希望通过隐藏不需要的UI或添加特殊样式以使其看起来更好来调整系统的UI,并执行其他操作,例如添加新字段仅用于显示目的。

HTML小部件只能添加到欢迎页面中,但如果您导航到另一个屏幕,例如"我的培训记录" HTML Widget中的脚本将不再有效,这是可以理解的。

我知道可以在头部HTML元素中注入javascript,但我想在刷新后,脚本将被删除。

问题: 是否可以将javascript注入Head元素,并确保它始终存在并且即使在页面刷新后它也能工作?

我正在考虑一个在页面刷新后注入的代码。这可能吗?

3 个答案:

答案 0 :(得分:0)

所以让我猜一下......你不想把JQuery注入网站一次,并确保它永远留在那里吗?

不可能以干净的方式。

如果你有API允许你操作文件 - 那么是。但是没有办法(我能想到)用JS注入JS并让它留在那里。 ; d

Aldo如果从DB生成HTML内容,那么您可以向DB注入一些代码。 另一种方式是......安装TROJAN ......但这是违法的!

答案 1 :(得分:0)

我们已要求公司添加脚本标记以引用我们自己开发的JavaScript,以SCORM格式打包作为培训课程材料的一部分,并使用Course Publisher上传到门户网站空间。然后可以从主页面的源访问JS文件。

该公司随后同意添加此脚本引用,并且我们能够使用动态脚本加载加载所有其他所需的脚本和CSS,现在正在加载每个页面刷新。这使我们能够使用客户端脚本和CSS自定义门户。

我们设法加载jQuery插件,使用日期选择器和日历控件添加Hijri日历支持。我们能够在两个方向上转换任何现有的Gregorian Date Filed和新添加的Hijri Date Field for Display和Data Entry。

有关详细信息,请查看以下视频:

Part 1Part 2

答案 2 :(得分:0)

如果我理解正确,也许你正在寻找这样的东西。我不确定您是否有任何跟踪cookie或能够在每个页面添加内容,但如果是这样,那么您基本上可以使用这些CMS系统(如果您使用的话,这也可以使用)。

也就是说,您的问题的解决方案是找到可以在每个页面上运行并使用它来嵌入代码的内容。如果可能是DB / CMS,跟踪代码,模板代码,常见的js或类似的东西。

以下是2条外部建议,但您仍需要在页面上获取脚本

https://www.optimizely.com/ab-testing/

的便宜选项

Google Tag Manager