私のサイトの Javascript ファイルの 1 つが、iPad (Mobile Safari) の表示を台無しにしています。iPad でのみファイルを削除し、他のすべてのブラウザーに提供したいと考えています。
私は次のJavaScriptを持っています:
<script type="text/javascript">
<![CDATA[
function removejscssfile(filename, filetype){
var targetelement=(filetype=="js")? "script" : (filetype=="css")? "link" : "none" //determine element type to create nodelist from
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(filename)!=-1)
allsuspects[i].parentNode.removeChild(allsuspects[i]) //remove element by calling parentNode.removeChild()
}
}
if((navigator.userAgent.match(/iPad/i))
{
removejscssfile("somescript.js", "js") //remove all occurences of "somescript.js" on page for ipad
}
]]
</script>
まず、上記の Javascript は有効ですか? (私の知識は浅いです)
第二に、これが最善の方法ですか?