i'm displaying webpage in wkwebview. hide elements header or sidebars, i'm applying javascript. problem i'm using 1 script various pages of same site, , page elements different different types of pages. if this:
let scripturl = nsbundle.mainbundle().pathforresource("myscript", oftype: "js") let scriptcontent = string(contentsoffile:scripturl!, encoding:nsutf8stringencoding, error: nil) let script = wkuserscript(source: scriptcontent!, injectiontime: .atdocumentend, formainframeonly: true) config.usercontentcontroller.adduserscript(script) …
document.getelementbyid("header").style.display = "none"; for nonexistent element, errors out , rest of javascript doesn't applied.
you'll have check see whether or not element valid before proceeding. instead of putting if statements everywhere, can define function so:
var setelementdisplaystyle = function(id, style) { var element = document.getelementbyid(id); if(element) element.style.display = style; } usage:
setelementdisplaystyle("header", "none");
Comments
Post a Comment