jquery - Unable to use Syncfusion JavaScript components in LightSwitch HTML -
i have bought syncfusion essential studio enterprise $599. using lightswitch silverlight components no issues seem having strange issues when using javascript components.
this of content of default.htm file brand new (and empty) lightswitch html client modifications required syncfusion:
<!doctype html> <html> <head> <meta charset="utf-8" /> <meta http-equiv="x-ua-compatible" content="ie=10" /> <meta name="handheldfriendly" content="true" /> <meta name="viewport" content="width=device-width, initial-scale=1, minimum-scale=1, maximum-scale=1, user-scalable=no" /> <meta name="apple-mobile-web-app-capable" content="yes" /> <title>application1.htmlclient</title> <script type="text/javascript"> // work around viewport sizing issue in ie 10 on windows phone 8 if (navigator.useragent.match(/iemobile\/10\.0/)) { document.writeln("<style>@-ms-viewport { width: auto!important; }</style>"); } </script> <link rel="stylesheet" type="text/css" href="content/light-theme-2.0.0.css" /> <link rel="stylesheet" type="text/css" href="content/msls-light-2.0.0.css" /> <link rel="stylesheet" type="text/css" href="content/jquery.mobile.structure-1.3.0.min.css" /> <link rel="stylesheet" type="text/css" href="content/msls-2.0.0.min.css" /> <!-- syncfusion --> <link rel="stylesheet" type="text/css" href="http://cdn.syncfusion.com/js/flat-azure/ej.widgets.all-latest.min.css" /> </head> <body> <div id="msls-id-app-loading" class="ui-body-a msls-layout-ignore"> <div class="msls-app-loading-img"></div> <span class="ui-icon ui-icon-loading"></span> <div class="ui-bottom-load"> <div>application1.htmlclient</div> </div> </div> <script type="text/javascript" src="//ajax.aspnetcdn.com/ajax/4.0/1/microsoftajax.js"></script> <script type="text/javascript" src="//ajax.aspnetcdn.com/ajax/globalize/0.1.1/globalize.min.js"></script> <script type="text/javascript" src="scripts/winjs-1.0.min.js"></script> <!--<script type="text/javascript" src="scripts/jquery-1.9.1.min.js"></script>--> <script src="http://code.jquery.com/jquery-1.10.1.min.js"></script> <script type="text/javascript" src="scripts/jquery.mobile-1.3.0.min.js"></script> <script type="text/javascript" src="scripts/datajs-1.1.1.min.js"></script> <script type="text/javascript" src="scripts/generated/resources.js"></script> <script type="text/javascript" src="scripts/msls-2.0.0.min.js"></script> <script type="text/javascript" src="scripts/generated/generatedassets.js"></script> <script type="text/javascript"> $(document).ready(function () { msls._run() .then(null, function failure(error) { alert(error); }); }); </script> <!-- syncfusion --> <script src="http://ajax.aspnetcdn.com/ajax/globalize/0.1.1/globalize.js"></script> <script src="http://cdnjs.cloudflare.com/ajax/libs/jquery-easing/1.3/jquery.easing.min.js"></script> <script src="http://borismoore.github.io/jsrender/jsrender.min.js"></script> <script src=" http://ajax.aspnetcdn.com/ajax/globalize/0.1.1/globalize.cultures.js "></script> <script src="http://cdn.syncfusion.com/js/ej.widgets.all-latest.min.js"></script> </body> </html>
in ie11/10, following error message: "failed load model: error: out of stack space"
in chrome, similar message: "failed load model: rangeerror: maximum call stack size exceeded"
in firefox, similar message well: "failed load model: internalerror: recursion"
the errors indicate may component trying register multiple times or something, question why , how can fix this?
this of course, works fine on standard html page (i'm looking @ samples provided)...just has issue lightswitch.
edit following response received syncfusion. noted, not have effect:
start email
thanks using syncfusion products.
we able reproduce above reported issue , have analyzed issue has been caused due incorrect array iteration in msls-2.0.0.js , unwanted array's prototype function addition finding lastitem in ej.widget.all.js. in order overcome issue have prepared work around follows.
code snippet:
<script src="http://cdn.syncfusion.com/js/ej.widgets.all-latest.min.js"></script> <script type="text/javascript"> ej.buildtag = function (tag, innerhtml, styles, attrs) { var tagname = /^[a-z]*[0-9a-z]+/ig.exec(tag)[0]; var id = /#([a-z]+[-_0-9a-z]+)/ig.exec(tag); id = id ? id[id.length - 1] : undefined; var classname = /\.([a-z]+[-_0-9a-z ]+)/ig.exec(tag); classname = classname ? classname[classname.length - 1] : undefined; return $(document.createelement(tagname)) .attr(id ? { "id": id } : {}) .addclass(classname || "") .css(styles || {}) .attr(attrs || {}) .html(innerhtml || ""); } </script>
we have confirmed defect , have logged defect report this. , suggest follow above workaround until defect available in our upcoming main release [2014 vol-1] expected released @ end of march. appreciate valuable patience until then.
please if need further assistance.
thanks/regards,
end email
this issues incorrect array iteration in msls-2.0.0.js , unwanted array's prototype function addition finding lastitem in ej.widget.all.js
to things working, can add following script in $(document).ready
$(document).ready(function () { delete array.prototype.lastitem; msls._run() .then(null, function failure(error) { alert(error); }); });
edit
after above workaround, syncfusion controls failed work. contact syncfusion support regarding issue.?
edit2
i found workaround make controls working fine. paste below script in default.htm
<script src="http://cdn.syncfusion.com/js/ej.widgets.all-latest.min.js"></script> <script type="text/javascript"> ej.buildtag = function (tag, innerhtml, styles, attrs) { var tagname = /^[a-z]*[0-9a-z]+/ig.exec(tag)[0]; var id = /#([a-z]+[-_0-9a-z]+)/ig.exec(tag); id = id ? id[id.length - 1] : undefined; var classname = /\.([a-z]+[-_0-9a-z ]+)/ig.exec(tag); classname = classname ? classname[classname.length - 1] : undefined; return $(document.createelement(tagname)) .attr(id ? { "id": id } : {}) .addclass(classname || "") .css(styles || {}) .attr(attrs || {}) .html(innerhtml || ""); } </script>
Comments
Post a Comment