| Summary: | Failed to get-node by using getElementById in webkitGTK while insert node by using inner HTML(Document-fragment Element). | ||||||
|---|---|---|---|---|---|---|---|
| Product: | WebKit | Reporter: | sssdev <sssqa007> | ||||
| Component: | DOM | Assignee: | Nobody <webkit-unassigned> | ||||
| Status: | NEW --- | ||||||
| Severity: | Critical | ||||||
| Priority: | P2 | ||||||
| Version: | WebKit Local Build | ||||||
| Hardware: | PC | ||||||
| OS: | Linux | ||||||
| Attachments: |
|
||||||
Created attachment 433652 [details]
Sample HTML test-code
Sample HTML test-code
We have checked In DOM tree node properly maintained by using below HTML TestCode.
<html>
<head>
<script type = "text/javascript">
function Html2Element(element)
{
var _div = document['createElement']("div");
_div.innerHTML = element;
//console.log("innerHTML"+_div.innerHTML+"********"+_div.innerHTML['firstChild']);
return _div['firstChild'];
}
function checkChildNodes(_div)
{
var svgElementChildes = _div.childNodes;
for ( var childnodeindex = 0; childnodeindex < svgElementChildes.length; childnodeindex++ )
{
document.writeln("Node ***"+svgElementChildes[childnodeindex]+"<br>");
checkChildNodes(svgElementChildes[childnodeindex]);
}
}
function CheckId()
{
var _div = Html2Element("<svg width='10' height='10'>"+"<clippath><rect id='clip' /></clippath>"+"</svg>");
document.writeln("Check Id"+_div['getElementById']('clip')+"*****<br>");
checkChildNodes(_div);
}
</script>
</head>
<body onload="CheckId()">
</body>
</html>
Output of HTML TestPage while run in webkit 2.30:
Check Idnull*****
Node ***[object SVGClipPathElement]
Node ***[object SVGRectElement]
|
Issue : DOM Node Insertion failure in webkitGTK while insert node by using innerHTML. Google Chrome behaviour: In Chrome successfully element displayed while get the by id('clip'). Output : Check Id[object SVGRectElement]*****. But in webkit null instance returned. Output : Check Idnull*****. WebkitGTK Revision : 2.30 and we validated the safari 14 version we have faced the same output. Please advice for node insertion failure. JS TestCode; <html> <head> <script type = "text/javascript"> function Html2Element(element) { var _div = document['createElement']("div"); _div.innerHTML = element; return _div['firstChild']; } function CheckId() { var _div = Html2Element("<svg width='10' height='10'>"+"<clippath><rect id='clip' /></clippath>"+"</svg>"); document.writeln("Check Id"+_div['getElementById']('clip')+"*****"); } </script> </head> <body onload="CheckId()"> </body> </html>