因此,我必须使用JavaScript确定专有CRM中的页面类型。确定页面类型(即前端唯一一致的差异)的唯一方法是检查src属性以/ modules /开头的脚本标记(在许多列表中)。
在标题中的十几个脚本标记的列表中,每个页面都有以下格式的行
<script src="/modules/example/includes/sample.js" type="text/javascript"></script>
现在,脚本标记的顺序永远不会相同,但是,总有一个脚本具有/ modules / blah。我需要提取blah到我的脚本可以检测它是什么类型的页面。
那么,我如何使用JavaScript或jQuery提取脚本标记的src值,其中src以/ modules开头,然后将值('示例',在上面的示例中)存储为javascript变量?
答案 0 :(得分:16)
好吧,您可以从收集所有脚本元素开始。使用jQuery,就像
一样简单var scripts = $("script");
然后将该设置限制为具有src
属性的元素:
var scripts = $("script[src]");
...并进一步将其限制为src
attribute beginning with“/ modules /”:
var scripts = $("script[src^='/modules/']");
...给出你的描述应该产生一组恰好一个元素,现在你可以从中提取src
属性值:
var path = $("script[src^='/modules/']").attr('src');
好的,这很容易 - 现在提取路径的下一部分。有很多方法可以做到这一点,但分裂是快速和哑:使用'/'作为分隔符创建一个零件数组,然后选择第三个元素(将是“模块”之后的那个元素):
var pathPart = $("script[src^='/modules/']").attr('src').split('/')[2];
显然,这非常特定于您使用的脚本路径的确切格式作为示例,但它应该让您很好地了解如何开始......