0

我正在使用 dragula.js,并在我的代码中使用 ondrop 事件,

drake.on('drop', function (el) {
    console.log(el);                       //result <div>foo bar</div>
    var n = typeof(el);                    //return object
    var x = el.indexOf("test");            //error TypeError: el.indexOf is not a function(…)
    // do another code
    })

我想检查参数是否"test"存在el,但发生错误。谢谢。

4

3 回答 3

2

我认为它应该像if ('test' in el)

于 2016-12-06T04:15:03.117 回答
0

使用 dom。大致:el.parentElement.children.indexOf(el)

已解决 - https://github.com/bevacqua/dragula/issues/209

于 2016-12-06T04:40:14.757 回答
0

indexOf适用于字符串,因此您需要使用元素的文本而不是元素本身来调用它,如下所示:

el.textContent.indexOf("test");

编辑:

看起来您想要拖动元素的索引而不是匹配其文本:

[].slice.call(el.parentElement.children).indexOf(el)
于 2016-12-06T04:16:42.050 回答