Here is solution by Steve Faulkner from Paciello Group Blog that supports Safari on Mac:
function addError() {
var elem1 = document.getElementById("add1");
document.getElementById('add1').setAttribute("role", "alert");
document.getElementById('display2').style.clip = 'auto';
alertText = document.createTextNode("alert via createTextnode()");
elem1.appendChild(alertText);
elem1.style.display = 'none';
elem1.style.display = 'inline';
}
<div id="display2" role="alert"><span id="add1"></span></div>
<input type="submit" value="Method 4 alert - display" onClick="addError()">