标签:javascript asynchronous themes dotnetnuke skin
我使用DNN的客户端资源管理将javascript和css加载到主题(皮肤)中,这样我可以利用缩小和复合文件,但我需要它们是异步的(非阻塞).如何才能做到这一点?
解决方法:
据我所知,没有办法在< script>上使用async(或defer)属性.由客户端资源管理框架呈现的标记.
您可以向< script>添加属性客户资源管理框架呈现的(或< link>)标记.将属性HtmlAttributesAsString添加到控件,然后使用冒号分隔属性名称和值,例如HtmlAttributesAsString = “异步:真”.需要注意的一点是,存在一个错误,即多个属性(应该通过逗号允许)不能正确呈现(请密切关注this pull request,这将解决这个问题,然后需要集成到DNN中).
您还可以编写脚本,以便在页面加载后设置一个事件处理程序来执行操作(例如,将代码包装在jQuery中(函数($){…});)
您还可以使用DnnJsInclude控件上的ForceProvider属性将脚本设置为在< / form>底部加载.元素,而不是< body>的顶部(脚本的默认值).所以,这可能是这样的:
<dnn:DnnJsInclude runat="server"
PathNameAlias="SkinPath"
FilePath="js/theme.min.js"
ForceProvider="DnnFormBottomProvider"
Priority="10000" />
标签:javascript,asynchronous,themes,dotnetnuke,skin 来源: https://codeday.me/bug/20190627/1309178.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。