我正在SharePoint服务器上构建一个网站,该服务器具有无法访问或删除的特定CSS文件。 jQuery可以在呈现之前从DOM中删除这些样式表吗?或者我可以指定页面上的某些元素只遵守特定的CSS样式,而不需要渲染其他文件?如何停止使用jQuery呈现CSS文件?
0
A
回答
2
是否有一个原因,你想使用纯JQuery的JQuery?
您可以使用此Javascript来替换外部样式表。
function createjscssfile(filename, filetype){
if (filetype=="js"){ //if filename is a external JavaScript file
var fileref=document.createElement('script')
fileref.setAttribute("type","text/javascript")
fileref.setAttribute("src", filename)
}
else if (filetype=="css"){ //if filename is an external CSS file
var fileref=document.createElement("link")
fileref.setAttribute("rel", "stylesheet")
fileref.setAttribute("type", "text/css")
fileref.setAttribute("href", filename)
}
return fileref
}
function replacejscssfile(oldfilename, newfilename, filetype){
var targetelement=(filetype=="js")? "script" : (filetype=="css")? "link" : "none" //determine element type to create nodelist using
var targetattr=(filetype=="js")? "src" : (filetype=="css")? "href" : "none" //determine corresponding attribute to test for
var allsuspects=document.getElementsByTagName(targetelement)
for (var i=allsuspects.length; i>=0; i--){ //search backwards within nodelist for matching elements to remove
if (allsuspects[i] && allsuspects[i].getAttribute(targetattr)!=null && allsuspects[i].getAttribute(targetattr).indexOf(oldfilename)!=-1){
var newelement=createjscssfile(newfilename, filetype)
allsuspects[i].parentNode.replaceChild(newelement, allsuspects[i])
}
}
}
replacejscssfile("oldscript.js", "newscript.js", "js") //Replace all occurences of "oldscript.js" with "newscript.js"
replacejscssfile("oldstyle.css", "newstyle", "css") //Replace all occurences "oldstyle.css" with "newstyle.css"
了解更多关于this page。
1
此代码禁用了Firebug控制台中的stackoverflow样式表。
var href = "http://sstatic.net/stackoverflow/all.css?v=84b08398d3dc";
jQuery('link[rel=stylesheet][href="' + href + '"]').get(0).disabled = true
与所有的JavaScript一样,它可以在没有jQuery的情况下完成。而且我假设,当禁用样式表的明显方式是删除HTML中的引用时,您有充分的理由诉诸JavaScript解决方案。
(从this post改编,它展示了如何使用jQuery来切换样式表。)
0
你提到的没有获得从SharePoint取出CSS文件...
这是否意味着你没有对主页面文件的访问权限?我建议尽可能在使用jQuery解决方法之前编辑主页面。
如果您可以访问主页面,您可以删除对Sharepoint特定CSS文件的引用。
SharePoint设计- _catalogs
- 母版(主页库)
- [YourMasterPageFile]
- 母版(主页库)
除去弗洛翼从<head>
:
<Sharepoint:CssLink runat="server"/>
相关问题
- 1. css文件停止使用.htaccess文件
- 2. 页停止呈现
- 3. 如何停止在特定页面上呈现文件
- 4. jQuery插件,使IE正常呈现css
- 5. iOS - 停止Modal UIViewController呈现
- 6. 如何让CKEditor用CSS呈现文字?
- 7. 停止加载css文件
- 8. 如何停止css/jquery旋转
- 9. 如何使用jQuery呈现响应流?
- 10. 如何:从web服务保存文件,而不停止页面呈现
- 11. 如何使Visual Studio中停止“编译”的.js和.css文件
- 12. 如何在CSSEditor中插入使用CSS呈现的文本?
- 13. 如何使用jQuery的CSS答:悬停
- 14. 停止使用文件
- 15. 如何使用JQuery停止Vimeo视频
- 16. 如何停止超时使用JQuery
- 17. 如何停止使用jquery工具时
- 18. 如何停止形式使用jQuery
- 19. 停止在把手中呈现模板
- 20. IE边缘停止呈现页面
- 21. 在Flash中停止呈现w/ActionScript 3
- 22. React停止呈现子元素
- 23. accep_nested_attributes_for停止我的子表单呈现?
- 24. Django:错误的呈现HTML(/ css)文件
- 25. 更新面板呈现元素后,css悬停菜单停止工作
- 26. 如何停止CSS动画
- 27. jQuery colorplugin停止CSS:悬停工作
- 28. 如何使用survey.js呈现React组件?
- 29. Flask Ajax Post - 如何停止重新呈现模板
- 30. 如何通过CSS关键帧使CSS动画停止一次后停止?