maryluis 4 лет назад
Родитель
Сommit
a5d5d8a3c2
1 измененных файлов с 82 добавлено и 18 удалено
  1. 82 18
      homework6js/1/bluebelt.html

+ 82 - 18
homework6js/1/bluebelt.html

@@ -29,10 +29,87 @@
         border: 1,
     },
 }
-var table = someTree.tagName
-var tdchki = someTree.subTags[0].subTags
-var value = Object.keys(someTree.attrs)[0]
-debugger
+function toHtmlStr(obj) {
+  var element = ""
+
+      if (obj.tagName !== undefined){
+          element+= "<" + obj.tagName
+
+            if (obj.attrs !== undefined) {
+                let attrs = obj.attrs
+
+                for (let key in attrs) {
+                    element += ` ${key}=${attrs[key]}` + ">\n"
+                }
+
+            } else {
+                element +=  + ">\n"
+            }
+            if (obj.text !== undefined) {
+                element += `${obj.text}`
+            }
+            if (obj.subTags !== undefined) {
+                let children = obj.subTags
+
+                for (let i = 0; i < children.length; i++) {
+                    let obj = children[i]
+                    if (obj.tagName !== undefined){
+                        element+= "<" + obj.tagName
+
+                        if (obj.attrs !== undefined) {
+                            let attrs = obj.attrs
+
+                            for (let key in attrs) {
+                                 element += `${key}=${attrs[key]}` + ">\n"
+                             }
+
+                        } else {
+                            element += ">\n"
+
+                            if (obj.text !== undefined) {
+                                element += `${obj.text}`
+                                }
+
+                        if (obj.subTags !== undefined) {
+                            let children = obj.subTags
+
+                            for (let i = 0; i < children.length; i++) {
+                                let obj = children[i]
+
+                                if (obj.tagName !== undefined){
+                                    element+= "<" + obj.tagName
+
+                                    if (obj.attrs !== undefined) {
+                                        let attrs = obj.attrs
+
+                                        for (let key in attrs) {
+                                            element += `${key}=${attrs[key]}` + ">\n"
+                                        }
+
+                                        } else {
+                                            element += ">\n" 
+                                        }
+
+                                    if (obj.text !== undefined) {
+                                        element += `${obj.text}`
+                                    }
+
+                                    element+= `</${obj.tagName}>\n`
+                                }
+                            }
+                        }
+
+                        element+= `</${obj.tagName}>\n`                         
+                    }
+                }
+            }
+            element+= `</${obj.tagName}>\n`
+      }
+  }
+    return document.write(element)
+}
+toHtmlStr(someTree)
+
 function toHtml(obj) {
 
     var element = document.createElement(obj.tagName);
@@ -56,20 +133,7 @@ function toHtml(obj) {
     return element;
 }
 
-document.body.appendChild(toHtml(someTree));
-
-//  var jsonString = "<" + table + " " + value + `= ` + someTree.attrs.border +`>\n<`
-//   + someTree.subTags[0].tagName + ">\n<" 
-//   + tdchki[0].tagName + ">\n"
-//   + tdchki[0].text + "\n</"
-//   + tdchki[0].tagName + ">\n<" 
-//   + tdchki[1].tagName + ">\n" 
-//   + tdchki[1].text + "\n</"
-//   + tdchki[1].tagName + ">\n</"
-//   + someTree.subTags[0].tagName 
-//   + ">\n</" + table + ">"
-//    console.log(jsonString)
-//    document.write(jsonString)
+// document.body.appendChild(toHtml(someTree));
     </script>
 </body>
 </html>