📄 kjs_html.cpp
字号:
case ID_SELECT: { DOM::HTMLSelectElement select = element; // read-only: type if (p == "selectedIndex") { select.setSelectedIndex(v.toNumber().intValue()); return; } else if (p == "value") { select.setValue(str); return; } else if (p == "length") { // read-only according to the NS spec, but webpages need it writeable KJSO coll = getSelectHTMLCollection(select.options(), select); coll.put( p, v ); return; } // read-only: form // read-only: options else if (p == "disabled") { select.setDisabled(v.toBoolean().value()); return; } else if (p == "multiple") { select.setMultiple(v.toBoolean().value()); return; } else if (p == "name") { select.setName(str); return; } else if (p == "size") { select.setSize(v.toNumber().intValue()); return; } else if (p == "tabIndex") { select.setTabIndex(v.toNumber().intValue()); return; } } break; case ID_OPTGROUP: { DOM::HTMLOptGroupElement optgroup = element; if (p == "disabled") { optgroup.setDisabled(v.toBoolean().value()); return; } else if (p == "label") { optgroup.setLabel(str); return; } } break; case ID_OPTION: { DOM::HTMLOptionElement option = element; // read-only: form if (p == "defaultSelected") { option.setDefaultSelected(v.toBoolean().value()); return; } // read-only: text <--- According to the DOM, but JavaScript and JScript both allow changes. // So, we'll do it here and not add it to our DOM headers. else if (p == "text") { DOM::NodeList nl(option.childNodes()); for (unsigned int i = 0; i < nl.length(); i++) { if (nl.item(i).nodeType() == DOM::Node::TEXT_NODE) { static_cast<DOM::Text>(nl.item(i)).setData(str); return; } } // No child text node found, creating one DOM::Text t = option.ownerDocument().createTextNode(str); try { option.appendChild(t); } catch(DOM::DOMException& e) { } return; } // read-only: index else if (p == "disabled") { option.setDisabled(v.toBoolean().value()); return; } else if (p == "label") { option.setLabel(str); return; } else if (p == "selected") { option.setSelected(v.toBoolean().value()); return; } // despide its name, it doesn't seem to modify the value, but the text! // (DF: ??? testcases shows that this indeed modifies the value! - code looks fine) else if (p == "value") { option.setValue(str); return; } } break; case ID_INPUT: { DOM::HTMLInputElement input = element; if (p == "defaultValue") { input.setDefaultValue(str); return; } else if (p == "defaultChecked") { input.setDefaultChecked(v.toBoolean().value()); return; } // read-only: form else if (p == "accept") { input.setAccept(str); return; } else if (p == "accessKey") { input.setAccessKey(str); return; } else if (p == "align") { input.setAlign(str); return; } else if (p == "alt") { input.setAlt(str); return; } else if (p == "checked") { input.setChecked(v.toBoolean().value()); return; } else if (p == "disabled") { input.setDisabled(v.toBoolean().value()); return; } else if (p == "maxLength") { input.setMaxLength(v.toNumber().intValue()); return; } else if (p == "name") { input.setName(str); return; } else if (p == "readOnly") { input.setReadOnly(v.toBoolean().value()); return; } else if (p == "size") { input.setSize(str); return; } else if (p == "src") { input.setSrc(str); return; } else if (p == "tabIndex") { input.setTabIndex(v.toNumber().intValue()); return; } // read-only: type else if (p == "useMap") { input.setUseMap(str); return; } else if (p == "value") { input.setValue(str); return; } } break; case ID_TEXTAREA: { DOM::HTMLTextAreaElement textarea = element; if (p == "defaultValue") { textarea.setDefaultValue(str); return; } // read-only: form else if (p == "accessKey") { textarea.setAccessKey(str); return; } else if (p == "cols") { textarea.setCols(v.toNumber().intValue()); return; } else if (p == "disabled") { textarea.setDisabled(v.toBoolean().value()); return; } else if (p == "name") { textarea.setName(str); return; } else if (p == "readOnly") { textarea.setReadOnly(v.toBoolean().value()); return; } else if (p == "rows") { textarea.setRows(v.toNumber().intValue()); return; } else if (p == "tabIndex") { textarea.setTabIndex(v.toNumber().intValue()); return; } // read-only: type else if (p == "value") { textarea.setValue(str); return; } } break; case ID_BUTTON: { DOM::HTMLButtonElement button = element; // read-only: form if (p == "accessKey") { button.setAccessKey(str); return; } else if (p == "disabled") { button.setDisabled(v.toBoolean().value()); return; } else if (p == "name") { button.setName(str); return; } else if (p == "tabIndex") { button.setTabIndex(v.toNumber().intValue()); return; } // read-only: type else if (p == "value") { button.setValue(str); return; } } break; case ID_LABEL: { DOM::HTMLLabelElement label = element; // read-only: form if (p == "accessKey") { label.setAccessKey(str); return; } else if (p == "htmlFor") { label.setHtmlFor(str); return; } } break;// case ID_FIELDSET: {// DOM::HTMLFieldSetElement fieldSet = element;// // read-only: form// }// break; case ID_LEGEND: { DOM::HTMLLegendElement legend = element; // read-only: form if (p == "accessKey") { legend.setAccessKey(str); return; } else if (p == "align") { legend.setAlign(str); return; } } break; case ID_UL: { DOM::HTMLUListElement uList = element; if (p == "compact") { uList.setCompact(v.toBoolean().value()); return; } else if (p == "type") { uList.setType(str); return; } } break; case ID_OL: { DOM::HTMLOListElement oList = element; if (p == "compact") { oList.setCompact(v.toBoolean().value()); return; } else if (p == "start") { oList.setStart(v.toNumber().intValue()); return; } else if (p == "type") { oList.setType(str); return; } } break; case ID_DL: { DOM::HTMLDListElement dList = element; if (p == "compact") { dList.setCompact(v.toBoolean().value()); return; } } break; case ID_DIR: { DOM::HTMLDirectoryElement directory = element; if (p == "compact") { directory.setCompact(v.toBoolean().value()); return; } } break; case ID_MENU: { DOM::HTMLMenuElement menu = element; if (p == "compact") { menu.setCompact(v.toBoolean().value()); return; } } break; case ID_LI: { DOM::HTMLLIElement li = element; if (p == "type") { li.setType(str); return; } else if (p == "value") { li.setValue(v.toNumber().intValue()); return; } } break; case ID_DIV: { DOM::HTMLDivElement div = element; if (p == "align") { div.setAlign(str); return; } } break; case ID_P: { DOM::HTMLParagraphElement paragraph = element; if (p == "align") { paragraph.setAlign(str); return; } } break; case ID_H1: case ID_H2: case ID_H3: case ID_H4: case ID_H5: case ID_H6: { DOM::HTMLHeadingElement heading = element; if (p == "align") { heading.setAlign(str); return; } } break; case ID_BLOCKQUOTE: { DOM::HTMLBlockquoteElement blockquote = element; if (p == "cite") { blockquote.setCite(str); return; } } case ID_Q: { DOM::HTMLQuoteElement quote = element; if (p == "cite") { quote.setCite(str); return; } } break; case ID_PRE: { DOM::HTMLPreElement pre = element; if (p == "width") { pre.setWidth(v.toNumber().intValue()); return; } } break; case ID_BR: { DOM::HTMLBRElement br = element; if (p == "clear") { br.setClear(str); return; } } break; case ID_BASEFONT: { DOM::HTMLBaseFontElement baseFont = element; if (p == "color") { baseFont.setColor(str); return; } else if (p == "face") { baseFont.setFace(str); return; } else if (p == "size") { baseFont.setSize(str); return; } } break; case ID_FONT: { DOM::HTMLFontElement font = element; if (p == "color") { font.setColor(str); return; } else if (p == "face") { font.setFace(str); return; } else if (p == "size") { font.setSize(str); return; } } break; case ID_HR: { DOM::HTMLHRElement hr = element; if (p == "align") { hr.setAlign(str); return; } else if (p == "noShade") { hr.setNoShade(v.toBoolean().value()); return; } else if (p == "size") { hr.setSize(str); return; } else if (p == "width") { hr.setWidth(str); return; } } break; case ID_INS: case ID_DEL: { DOM::HTMLModElement mod = element; if (p == "cite") { mod.setCite(str); return; } else if (p == "dateTime") { mod.setDateTime(str); return; } } break; case ID_A: { DOM::HTMLAnchorElement anchor = element; if (p == "accessKey") { anchor.setAccessKey(str); return; } else if (p == "charset") { anchor.setCharset(str); return; } else if (p == "coords") { anchor.setCoords(str); return; } else if (p == "href") { anchor.setHref(str); return; } else if (p == "hreflang") { anchor.setHreflang(str); return; } else if (p == "name") { anchor.setName(str); return; } else if (p == "rel") { anchor.setRel(str); return; } else if (p == "rev") { anchor.setRev(str); return; } else if (p == "shape") { anchor.setShape(str); return; } else if (p == "tabIndex") { anchor.setTabIndex(v.toNumber().intValue()); return; } else if (p == "target") { anchor.setTarget(str); return; } else if (p == "type") { anchor.setType(str); return; } } break; case ID_IMG: { DOM::HTMLImageElement image = element; if (p == "lowSrc") { image.setLowSrc(str); return; } else if (p == "name") { image.setName(str); return; } else if (p == "align") { image.setAlign(str); return; } else if (p == "alt") { image.setAlt(str); return; } else if (p == "border") { image.setBorder(str); return; } else if (p == "height") { image.setHeight(str); return; } else if (p == "hspace") { image.setHspace(str); return; } else if (p == "isMap") { image.setIsMap(v.toBoolean().value()); return; } else if (p == "longDesc") { image.setLongDesc(str); return; } else if (p == "src") { image.setSrc(str); return; } else if (p == "useMap") { image.setUseMap(str); return; } else if (p == "vspace") { image.setVspace(str); return; } else if (p == "width") { image.setWidth(str); return; } } break; case ID_OBJECT: { DOM::HTMLObjectElement object = element; // read-only: form if (p == "code") { object.setCode(str); return; } else if (p == "align") { object.setAlign(str); return; } else if (p == "archive") { object.setArchive(str); return; } else if (p == "border") { object.setBorder(str); return; } else if (p == "codeBase") { object.setCodeBase(str); return; } else if (p == "codeType") { object.setCodeType(str); return; } else if (p == "data") { object.setData(str); return; } else if (p == "declare") { object.setDeclare(v.toBoolean().value()); return; } else if (p == "height") { object.setHeight(str); return; } else if (p == "hspace") { object.setHspace(str); return; } else if (p == "name") { object.setName(str); return; } else if (p == "standby") { object.setStandby(str); return; } else if (p == "tabIndex") { object.setTabIndex(v.toNumber().intValue()); return; } else if (p == "type") { object.setType(str); return; } else if (p == "useMap") { object.setUseMap(str); return; } else if (p == "vspace") { object.setVspace(str); return; } else if (p == "width") { object.setWidth(str); return; }// else if (p == "contentDocument") // new for DOM2 - not yet in khtml// return getDOMNode(object.contentDocument()); // type Document } break; case ID_PARAM: { DOM::HTMLParamElement param = element; if (p == "name") { param.setName(str); return; } else if (p == "type") { param.setType(str); return; } else if (p == "value") { param.setValue(str); return; } else if (p == "valueType") { param.setValueType(str); return; } } break; case ID_APPLET: { DOM::HTMLAppletElement applet = element; if
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -