我正在使用DotNetNuke 4.8.x并想使用jQuery。任何人都可以建议我将jQuery集成到DNN的最佳方法是什么?我无法将DNN版本升级到5,它内置了对jQuery的支持。
非常感谢您的建议。
答案 0 :(得分:2)
为避免多次加载jQuery,最好使用客户端脚本,例如给定here的脚本。
在服务器端,您可以在Page.Init或Page.Load事件期间在页眉中加载jQuery库:
Protected Sub Page_Init(ByVal sender As Object, ByVal e As EventArgs) Handles MyBase.Init
Page.Header.Controls.Add(...)
End Sub
您可能希望使用辅助方法来创建HtmlGenericControl,例如
Public Function HeadScriptResource(ByVal src As String) As HtmlGenericControl
Dim Include As New HtmlGenericControl("script")
Include.Attributes.Add("type", "text/javascript")
Include.Attributes.Add("src", src)
Return Include
End Function
这样,您可以使用源路径作为参数将任何脚本添加到标头:
Page.Header.Controls.Add(HeadScriptResource("/resources/shared/scripts/jquery/jquery.min.js"))
DNN 4.9.1及更高版本附带jQuery,位于
/resources/shared/scripts/jquery/jquery.min.js
如果您需要的每台服务器都具有Web访问权限(在企业环境中不明显),则可以使用托管jQuery,例如: http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js
使用托管jQuery,如果网站使用https,则必须使用https网址。否则,您将收到浏览器警告。总是使用https可能更容易。
如果您需要逐页添加jQuery,您还可以按照建议here在页面设置中使用页眉标记。
另见: