var nodes = {
  "navRootID" :         "directory",
  "parentElmClassName": "read-more", // The class name for the target node's parent element.
  "targetNode": {
    "name":  "IMG",
    "width": 120
  }
}

var getElementsByClassName = (
  function() {
    var d = window.document;
    if (typeof d.getElementsByClassName == 'function')
      return function(className, node) {
        return (node || d).getElementsByClassName(className);
      };
    else if (typeof d.querySelectorAll == 'function')
      return function(className, node) {
        return (node || d).querySelectorAll('.' + className);
      };
    else return function(className, node) {
      if (!className)
        return [];
      var
        elements = (node || document).getElementsByTagName('*'),
        list = [],
        expr = new RegExp('(^|\\b)' + className + '(\\b|$)');
      if (elements.length == 0)
        return elements;
      for (var i = 0, length = elements.length; i < length; i++)
        if (expr.test(elements[i].className))
          list[list.length] = elements[i];
      return list;
    };
  }
)();

window.onload = function() {
  var navRoot = getElementsByClassName(nodes.parentElmClassName);
  for (var i = 0; i < navRoot.length; i++) {
    for (var j = 0; j < navRoot[i].childNodes.length; j++) {
      var targetNode = navRoot[i].childNodes[j];
      if (targetNode.nodeName == nodes.targetNode.name) {
        var newh = Math.floor(targetNode.height / targetNode.width * nodes.targetNode.width);
        targetNode.width = nodes.targetNode.width;
        targetNode.height = newh;
      }
    }
  }
}

