SitePoint Sponsor

User Tag List

Results 1 to 2 of 2
  1. #1
    SitePoint Enthusiast
    Join Date
    Oct 2012
    0 Post(s)
    0 Thread(s)

    MM = Dreamweaver?

    I'm volunteering to redesign the website of a non-profit and I suspect that their current code was generated with a WYSIWYG editor. There are multiple functions that are prefaced with "MM" such as MM_swapImgRestore() and MM_preLoadImg(). Is this Dreamweaver? I've copied a bunch of their code below to give a fuller picture.

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <title>Laurens House 4 Positive Change Inc</title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"><link href="stylesheet.css" rel="stylesheet" type="text/css">
    <script language="JavaScript" type="text/JavaScript">
    function MM_swapImgRestore() { //v3.0
      var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
    function MM_preloadImages() { //v3.0document.getElementById('navcontainer').style.visibility = 'hidden';
      var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
        var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
        if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
    function MM_findObj(n, d) { //v4.01
      var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
        d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
      if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
      for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
      if(!x && d.getElementById) x=d.getElementById(n); return x;
    function MM_swapImage() { //v3.0
      var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
       if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
    function show()
    document.getElementById('navcontainer').style.visibility = 'visible';
    function hide()
    document.getElementById('navcontainer').style.visibility = 'hidden';
    <body background="images/websiteFlashBackgrd.jpg" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0" onLoad="MM_preloadImages('images/aAboutUson.gif','images/aHomeButton.gif','images/aIntroLifeon.gif','images/aCalendaron.gif','images/aFormson.gif','images/aStoreon.gif','images/aDonateon.gif','images/aContactUson.gif')">
    <div align="center">
    One thing that really stood out is that there is JS in between the closing </head> tag and the beginning <body> tag. There shouldn't be anything between these two tags, correct?

  2. #2
    Programming Since 1978 silver trophybronze trophy felgall's Avatar
    Join Date
    Sep 2005
    Sydney, NSW, Australia
    25 Post(s)
    1 Thread(s)
    Yes Macromedia implemented all the JavaScript generated by their Dreamweaver product with MM_ prefixes so that the code could be easily identified as having been generated by their product.

    Adobe did not change the prefix when they bought Dreamweaver so the antiquated JavaScript still has the same prefix identifying the company the product belonged to back in the stone age when those scripts were written.

    You are right that there shouldn't be anything between the </head> and <body> tags. Almost all JavaScript should go immediately before the </body> tag. You shouldn't rely on Dreamweaver to write the JavaScript as even JavaScript beginner should be able to write far better JavaScript than Dreamweaver produces after an hour or so study.
    Stephen J Chapman, Book Reviews, follow me on Twitter
    HTML Help, CSS Help, JavaScript Help, PHP/mySQL Help, blog
    <input name="html5" type="text" required pattern="^$">


Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts