if 문으로 여러가지 조건을 OR 조건으로 만들려다보니 너무 길어지고 가독성도 떨어지는 것 같아서
해당 조건들을 배열로 만들고 이 배열을 가지고 if 문을 만들고 싶었다.
해서 찾아보니 아래와 같은 방법으로 사용할 수 있었다.
//동작안됨
if (["fieldset", "legend", "span", "input", "label", "select", "option", "br", "textarea", "img"].includes(item.tagName.toLowerCase()))
return;
크롬에선 잘 동작한다.
하지만 ie11 버전에서는 includes 함수가 없다면서 동작하지 않는다.
해서 또 찾아보니 아래와 같은 방법으로는 사용이 되더라.
원래는 찾아보니 indexOf를 사용하라는데, 하나짜리 문자열이 겹치는 통에 사용할 수 없었다.
//ie11 에서도 동작 잘 됨
var notList = ["fieldset", "legend", "span", "input", "label", "select", "option", "br", "textarea", "img"];
if ($.inArray(item.tagName.toLowerCase(), notList) != -1)
return;
//또는 아래와 같은 방법으로 한 줄로..
if ($.inArray(item.tagName.toLowerCase(), ["p", "legend", "span", "input", "label"]) != -1) {
}