From f887cdcbbd6e0442cfa2e8971135efb67d12ab52 Mon Sep 17 00:00:00 2001 From: Robert Kaiser Date: Fri, 20 Apr 2018 21:40:27 +0200 Subject: [PATCH 1/1] add shorthand functions to set/add classes and set IDs on elements --- classes/document.php-class | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/classes/document.php-class b/classes/document.php-class index f266fb0..be9d150 100755 --- a/classes/document.php-class +++ b/classes/document.php-class @@ -612,6 +612,16 @@ class ExtendedElement extends DOMElement { // public function appendJSFile($jsURL, [$defer], [$async]) // appends an ExtendedDocument::createElementJSFile() as a child of this element (see there for params) // returns the new child + // + // public function setClass($classname) + // sets the 'class' attribute of the element to the given classname value + // + // public function addClass($classname) + // adds the given classname value to the space-separated list in the 'class' attribute + // returns the value of the 'class' attribute + // + // public function setID($elem_id) + // sets the 'id' attribute of the element to the given elem_id value public function appendElement($name, $value = '') { return $this->appendChild($this->ownerDocument->createElement($name, $value)); @@ -697,6 +707,19 @@ class ExtendedElement extends DOMElement { public function appendJSFile($jsdata, $defer = false, $async = false) { return $this->appendChild($this->ownerDocument->createElementJSFile($jsdata, $defer, $async)); } + public function setClass($classname) { + $this->setAttribute('class', $classname); + } + public function addClass($classname) { + $classval = $this->getAttribute('class'); + if (strlen($classval)) { $classval .= ' '; } + $classval .= $classname; + $this->setClass($classval); + return $classval; + } + public function setID($elem_id) { + $this->setAttribute('id', $elem_id); + } } class ExtendedDocumentFragment extends DOMDocumentFragment { -- 2.35.3