You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I am using angular js in my page. So, basically angular will add directives like 'ng:cloak', 'ng-cloak', 'data-ng-cloak', 'x-ng-cloak', '.ng-cloak', '.x-ng-cloak', '.ng-hide' the following selectors to page.
SVG2Bitmap.js:294 Uncaught SyntaxError: Failed to execute 'matches' on 'Element': '[ng:cloak], [ng-cloak], [data-ng-cloak], [x-ng-cloak], .ng-cloak, .x-ng-cloak, .ng-hide' is not a valid selector.
Now I am getting the above error while creating a image from SVG.
The text was updated successfully, but these errors were encountered:
Sorry @Jayaramki it took me so long to see your issue...
This error seems strange to me : [ng:cloack] is indeed an invalid CSS attribute selector. For namespaced attributes it should be :
@namespace ng "http://someNameSpaceURI";
[ng|cloak] { ruleset: ...;}
So a few questions come to my mind :
Which browser does throw this error ? Your browser should have rejected this ruleset, and SVG2Bitmap script shouldn't have been able to see it.
I don't know AngularJS so much, so are you sure it is this library which added this ruleset and not you in your CSS files ? And if so, could create a small snippet where the problem does occur so I can see it live ?
For a quick fix, you could probably just add selector = selector.replace(/:/g,'\\:') @line300 of the latest version
var selector = rules[j].selectorText;
// probably an external stylesheet we can't access
if(!selector){
continue;
}
selector = selector.replace(/:/g,'\\:')
// is it our svg node or one of its children ?
if ((svg.matches && svg.matches(selector)) || svg.querySelector(selector)) { ...
But I would probably have to make a real css-selectors validator, and a CSS namespace parser, but I prefer to have the previously requested informations before committing this quick fix.
Hi @Kaiido,
I am using angular js in my page. So, basically angular will add directives like 'ng:cloak', 'ng-cloak', 'data-ng-cloak', 'x-ng-cloak', '.ng-cloak', '.x-ng-cloak', '.ng-hide' the following selectors to page.
SVG2Bitmap.js:294 Uncaught SyntaxError: Failed to execute 'matches' on 'Element': '[ng:cloak], [ng-cloak], [data-ng-cloak], [x-ng-cloak], .ng-cloak, .x-ng-cloak, .ng-hide' is not a valid selector.
Now I am getting the above error while creating a image from SVG.
The text was updated successfully, but these errors were encountered: