0

Since there are host of powerful client side JavaScript and CSS framework and libraries available for free, like JQuery, Angular JS, BackBone, Bootstrap, KnockOut, Medernizr, Node JS, is there any recommendations available for using or not using them with Tridion and particularly XPM.

Since, Tridion (on CM side) and particularly XPM injects its own tags, I feel DOM manipulation with these JS libraries can easily conflict with it and break the pages.

Please share your experiences with these JS libraries and any other HTML recommendations that needs to be followed, to avoid such conflicts altogether.

2 Answers 2

3

There can certainly be issues with XPM and other JS libs, in particular those that rely on heavy Ajax. The project that John is describing was actually full of JS issues (though most we're not XPM related).

One of the issues for instance, when jQuery does an Ajax HTML load call, it strips off all HTML comments in the source page. Guess what?... It kills XPM's markup as a result. So we had to resort to doing a raw JavaScript call after hours of debugging in various browsers.

Generally all is ok, but you, as the implementer, need to understand the sequence in which each JS event/DOM manipulation fires, and make sure that XPM always goes last.

3

We've done a lot of work with JQuery (and DOM manipulation) and a whole host of other JS libraries, and not experienced any technical issues.

We've added XPM to an existing site in the past where page content was ajaxed into the main content window (the site was a 'monolith' style site and driven by a single page). In that instance we needed to inject a little bit of code to supply the correct page data to XPM.

2
  • John, that monolith page implementation was terrible. It had a ridiculous amount of redundant complexity as a result of the Ajaxing. We learnt a lot about XPM's behaviour as a result, but it was a pain nevertheless. Jun 22, 2014 at 22:06
  • P.s. For the record, we did not design that monstrosity. Jun 22, 2014 at 22:07

Not the answer you're looking for? Browse other questions tagged or ask your own question.