2016-12-29 13 views
0

как я могу получить положение элемента при изменении размера в aurelia. У меня есть меню с элементом и элементы изменения размера, которые переполняют блок, нужно выталкивать в раскрывающееся меню. Я могу сделать это с помощью jquery и позиций элементов, но, возможно, я смогу сделать это без него в aurelia. И как я могу правильно использовать jquery в классе aurelia. Спасибо и извините за мой английский :)aurelia получить позицию при изменении размера

import $ from 'jquery'; 



export class CategoriesElement { 
    check(){ 
     // this.dropdown = this.categories; 
     $('.categories-menu'); 
    } 
} 

Я не могу получить элемент dom с jquery в методе. Я импортировал jquery, но он не работает должным образом.

+0

это выглядит, как вы правильно импортировать JQuery, убедитесь, что вы установили его с npm. Я бы порекомендовал избегать использования его в отношении DOM внутри Aurelia. –

+0

, чтобы получить позицию элемента, вы можете посмотреть его свойства DOM, такие как offsetLeft и offsetTop, или вы можете запросить текущую позицию с помощью [getBoundingClientRect()] (https://developer.mozilla.org/en-US/docs/ Web/API/элемент/getBoundingClientRect) –

ответ

2

Нет необходимости использовать jQuery для получения элемента. Просто используйте собственный атрибут ref, и этот элемент станет свойством на вашей виртуальной машине.

Вот пример: https://gist.run?id=39ed84ccdeab0d064038e201d58f8098

app.html

<template> 
    <h1>Please open your console</h1> 
    <div ref="theDiv">${message}</div> 

    <button click.delegate="doStuff()">Click Me</button> 
</template> 

app.js

export class App { 
    message = "Hello"; 
    doStuff() { 
    console.log(this.theDiv.textContent); 
    } 
} 

 Смежные вопросы

  • Нет связанных вопросов^_^