Xpath - select either or
HTML
<div>
<p>a</p>
</div>
<div>
<select>b</select>
</div>
JavaScript
//https://developer.mozilla.org/en/docs/Web/API/Document/evaluate
/*var els = document.evaluate('/html/body//div[@id="root1"]//input | //select', document, null, XPathResult.ANY_TYPE, null);
var el = els.iterateNext();
console.log(el.tagName);
var els = document.evaluate('/html/body//div[@id="root2"]//input | //select', document, null, XPathResult.ANY_TYPE, null);
var el = els.iterateNext();
console.log(el.tagName);
var els = document.evaluate('/html/body//div[@id="root1"]//*[self::input or self::select]', document, null, XPathResult.ANY_TYPE, null);
var el = els.iterateNext();
console.log(el.tagName);
var els = document.evaluate('/html/body//div[@id="root2"]//*[self::input or self::select]', document, null, XPathResult.ANY_TYPE, null);
var el = els.iterateNext();
console.log(el.tagName);
*/
var els = document.evaluate('/html/body/div/*[self::p or self::select]', document, null, XPathResult.ANY_TYPE, null);
var el = els.iterateNext();
console.log(el.tagName);
var el = els.iterateNext();
console.log(el.tagName);