jQuery - назначить себя в .data () - PullRequest
0 голосов
/ 28 апреля 2018

Есть ли способ безопасно назначить элемент в его собственном атрибуте .data () с помощью jQuery? Использование

$(document).ready(function() {
    $("#myDiv").data("element",this);
    var el = $('#myDiv').data('element');
});

дает для el только #document вместо фактического элемента.
Я знаю, что этого можно избежать, используя $("#myDiv").data("element",$("#myDiv")[0]);

Но я хочу более водостойкий метод, который не требует заполнения $('#myDiv') дважды.

Единственное решение, которое я нашел до сих пор, это:

$(document).ready(function() {
    var el_original = $("#myDiv")[0];
    $("#myDiv").data("element",el_original);
    var el = $('#myDiv').data('element');
});


Что работает, но я не совсем доволен.

Заранее спасибо за любые советы, которые есть у кого-либо, и извините, если я немного озвучиваю.

1 Ответ

0 голосов
/ 28 апреля 2018

Вы можете использовать ниже код:

$.data($("#myDiv").get(0), "element", $("#myDiv").get(0));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...