{"action":"created","issue":{"url":"https://api.github.com/repos/filamentgroup/grunticon/issues/289","labels_url":"https://api.github.com/repos/filamentgroup/grunticon/issues/289/labels{/name}","comments_url":"https://api.github.com/repos/filamentgroup/grunticon/issues/289/comments","events_url":"https://api.github.com/repos/filamentgroup/grunticon/issues/289/events","html_url":"https://github.com/filamentgroup/grunticon/issues/289","id":101462189,"number":289,"title":"Safari 8.0.6 - TypeError: null is not an object (evaluating 'document.body.setAttribute')","user":{"login":"PJL101","id":1689044,"avatar_url":"https://avatars.githubusercontent.com/u/1689044?v=3","gravatar_id":"","url":"https://api.github.com/users/PJL101","html_url":"https://github.com/PJL101","followers_url":"https://api.github.com/users/PJL101/followers","following_url":"https://api.github.com/users/PJL101/following{/other_user}","gists_url":"https://api.github.com/users/PJL101/gists{/gist_id}","starred_url":"https://api.github.com/users/PJL101/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/PJL101/subscriptions","organizations_url":"https://api.github.com/users/PJL101/orgs","repos_url":"https://api.github.com/users/PJL101/repos","events_url":"https://api.github.com/users/PJL101/events{/privacy}","received_events_url":"https://api.github.com/users/PJL101/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":3,"created_at":"2015-08-17T16:42:52Z","updated_at":"2015-08-18T16:10:55Z","closed_at":null,"body":"Hi,\r\n\r\nI'm having an issue with Safari 8.0.6/OSX 10.10.5 where grunticons won't display and the above error is in the console.\r\n\r\nUnfortunately, I'm having problems producing a workable test case but I noticed this live website is doing it and looks to be using the same configuration as mine: http://benjgorman.com\r\n\r\nWeirdly on my project, the preview.html is fine and I have checked that the preview.html and my website code is the same.\r\n\r\nI have worked around this by putting the grunticon load line at the bottom of the body for the time being.\r\n\r\n"},"comment":{"url":"https://api.github.com/repos/filamentgroup/grunticon/issues/comments/132262695","html_url":"https://github.com/filamentgroup/grunticon/issues/289#issuecomment-132262695","issue_url":"https://api.github.com/repos/filamentgroup/grunticon/issues/289","id":132262695,"user":{"login":"benjgorman","id":622001,"avatar_url":"https://avatars.githubusercontent.com/u/622001?v=3","gravatar_id":"","url":"https://api.github.com/users/benjgorman","html_url":"https://github.com/benjgorman","followers_url":"https://api.github.com/users/benjgorman/followers","following_url":"https://api.github.com/users/benjgorman/following{/other_user}","gists_url":"https://api.github.com/users/benjgorman/gists{/gist_id}","starred_url":"https://api.github.com/users/benjgorman/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/benjgorman/subscriptions","organizations_url":"https://api.github.com/users/benjgorman/orgs","repos_url":"https://api.github.com/users/benjgorman/repos","events_url":"https://api.github.com/users/benjgorman/events{/privacy}","received_events_url":"https://api.github.com/users/benjgorman/received_events","type":"User","site_admin":false},"created_at":"2015-08-18T16:10:55Z","updated_at":"2015-08-18T16:10:55Z","body":"```\r\n<script>\r\n\t/*! grunt-grunticon Stylesheet Loader - v2.1.6 | https://github.com/filamentgroup/grunticon | (c) 2015 Scott Jehl, Filament Group, Inc. | MIT license. */\r\n\r\n\t!function(){function e(e,n,t,o){\"use strict\";var r=window.document.createElement(\"link\"),a=n||window.document.getElementsByTagName(\"script\")[0],i=window.document.styleSheets;return r.rel=\"stylesheet\",r.href=e,r.media=\"only x\",o&&(r.onload=o),a.parentNode.insertBefore(r,a),r.onloadcssdefined=function(n){for(var t,o=0;o<i.length;o++)i[o].href&&i[o].href.indexOf(e)>-1&&(t=!0);t?n():setTimeout(function(){r.onloadcssdefined(n)})},r.onloadcssdefined(function(){r.media=t||\"all\"}),r}function n(e,n){e.onload=function(){e.onload=null,n&&n.call(e)},\"isApplicationInstalled\"in navigator&&\"onloadcssdefined\"in e&&e.onloadcssdefined(n)}!function(t){var o=function(r,a){\"use strict\";if(r&&3===r.length){var i=t.navigator,c=t.document,d=t.Image,s=!(!c.createElementNS||!c.createElementNS(\"http://www.w3.org/2000/svg\",\"svg\").createSVGRect||!c.implementation.hasFeature(\"http://www.w3.org/TR/SVG11/feature#Image\",\"1.1\")||t.opera&&-1===i.userAgent.indexOf(\"Chrome\")||-1!==i.userAgent.indexOf(\"Series40\")),l=new d;l.onerror=function(){o.method=\"png\",o.href=r[2],e(r[2])},l.onload=function(){var t=1===l.width&&1===l.height,i=r[t&&s?0:t?1:2];t&&s?o.method=\"svg\":t?o.method=\"datapng\":o.method=\"png\",o.href=i,n(e(i),a)},l.src=\"data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///ywAAAAAAQABAAACAUwAOw==\",c.documentElement.className+=\" grunticon\"}};o.loadCSS=e,o.onloadCSS=n,t.grunticon=o}(this),function(e,n){\"use strict\";var t=n.document,o=\"grunticon:\",r=function(e){if(t.attachEvent?\"complete\"===t.readyState:\"loading\"!==t.readyState)e();else{var n=!1;t.addEventListener(\"readystatechange\",function(){n||(n=!0,e())},!1)}},a=function(e){return n.document.querySelector('link[href$=\"'+e+'\"]')},i=function(e){var n,t,r,a,i,c,d={};if(n=e.sheet,!n)return d;t=n.cssRules?n.cssRules:n.rules;for(var s=0;s<t.length;s++)r=t[s].cssText,a=o+t[s].selectorText,i=r.split(\");\")[0].match(/US\\-ASCII\\,([^\"']+)/),i&&i[1]&&(c=decodeURIComponent(i[1]),d[a]=c);return d},c=function(e){var n,r,a,i;a=\"data-grunticon-embed\";for(var c in e){i=c.slice(o.length);try{n=t.querySelectorAll(i)}catch(d){continue}r=[];for(var s=0;s<n.length;s++)null!==n[s].getAttribute(a)&&r.push(n[s]);if(r.length)for(s=0;s<r.length;s++)r[s].innerHTML=e[c],r[s].style.backgroundImage=\"none\",r[s].removeAttribute(a)}return r},d=function(n){\"svg\"===e.method&&r(function(){c(i(a(e.href))),\"function\"==typeof n&&n()})};e.embedIcons=c,e.getCSS=a,e.getIcons=i,e.ready=r,e.svgLoadedCallback=d,e.embedSVG=d}(grunticon,this)}();\r\n\tgrunticon([\"YOURDIRECTORY/grunt/output/icons.data.svg.css\", \"YOURDIRECTORY/grunt/output/icons.data.png.css\", \"YOURDIRECTORY/grunt/output/icons.fallback.css\"], grunticon.svgLoadedCallback );\r\n</script>\r\n\t\r\n<noscript><link href=\"YOURDIRECTORY/grunt/output/icons.fallback.css\" rel=\"stylesheet\"></noscript>\r\n```\r\n\r\nIn your <head> do you both have something like this? You need to copy the line beginning with `!function()` from your grunticon.loader.js file in your grunt/output folder as it may be different to mine."}}