Browse DevX
Sign up for e-mail newsletters from DevX

Tip of the Day
Language: JavaScript
Expertise: Advanced
Oct 4, 2005



Building the Right Environment to Support AI, Machine Learning and Deep Learning

Modifying Client JavaScript Code at Runtime

You can make new tags/components using JavaScript blocks. Simply include a script iterating through all the script blocks in your page:

<script language="javascript">
function writeComponent(){
  var scriptblocks = document.getElementsByTagName("script");
  for (i=0;i < scriptblocks.length;i++){
     //iterate through all the script blocks
     if (scriptblocks[i].innerHTML== "writeComponent()"){
         //initialize your component as javascript object
         var classname = scriptblocks[i].getAttribute("classname"); 
         eval("var component = new " + classname + "()");
         //the JsObject should implement a getElement() function
         //so is can be retrieved and replace the scriptblock element
         var parent    = scriptblocks[i].parentNode;
         var attribs = scriptblocks[i].attributes;
         //you can copy attribute values in your constructor
         //or set the style of the component element

<html> etc...
<script language="javascript" classname="myCompClass">writeComponent()</script>
As soon as the browser renders the scriptblock, the function is called and the browser replaces the script block with whatever component you've written.

Eddy Spreeuwers
Comment and Contribute






(Maximum characters: 1200). You have 1200 characters left.



Thanks for your registration, follow us on our social networks to keep up-to-date