Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ionic-framework/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ionic framework 如何使用$ionicPosition.position_Ionic Framework - Fatal编程技术网

Ionic framework 如何使用$ionicPosition.position

Ionic framework 如何使用$ionicPosition.position,ionic-framework,Ionic Framework,根据本测试内容: <ion-content class="has-header" delegate-handle="menu"> <div id="activeitem">Test</div> <button ng-click="vm.scrollToActiveElement()">Test Scroll</button> </ion-content> 但是调用$ionicPosition.position会

根据本测试内容:

<ion-content class="has-header" delegate-handle="menu">
   <div id="activeitem">Test</div>
   <button ng-click="vm.scrollToActiveElement()">Test Scroll</button>
</ion-content>
但是调用
$ionicPosition.position
会导致以下错误:

无法读取未定义的属性“getBoundingClientRect”


你几乎做到了。事实上,这种方法在爱奥尼亚的文档中记录得很差

在深入研究源代码后我发现,由于这些方法是jQuery等价的,总是返回元素数组,因此传递给这些函数的参数应该是一个数组,第0个索引指向实际DOM,如下所示

vm.scrollToActivieElement=函数(){
var elem=document.getElementById('activeitem');
如果(!elem)
返回;
var position=$ionicPosition.position([elem]);//不仅仅是elem
};
/*它返回参数[0]的偏移量
其中param是传递给此函数的参数
*/
/*也就是说,当这些方法受到启发时,我们需要将dom元素包装到数组中
从jQuery和jQuery将匹配的元素包装到数组中
如果您使用的是AngularJS的jqLite,请验证
DOM是否位于数组第0位

*/
你就快到了。事实上,这种方法在爱奥尼亚的文档中记录得非常糟糕

在深入研究源代码后我发现,由于这些方法是jQuery等价的,总是返回元素数组,因此传递给这些函数的参数应该是一个数组,第0个索引指向实际DOM,如下所示

vm.scrollToActivieElement=函数(){
var elem=document.getElementById('activeitem');
如果(!elem)
返回;
var position=$ionicPosition.position([elem]);//不仅仅是elem
};
/*它返回参数[0]的偏移量
其中param是传递给此函数的参数
*/
/*也就是说,当这些方法受到启发时,我们需要将dom元素包装到数组中
从jQuery和jQuery将匹配的元素包装到数组中
如果您使用的是AngularJS的jqLite,请验证
DOM是否位于数组第0位

*/
你发现了吗?你发现了吗?
vm.scrollToActiveElement = function () {

    var elem = document.getElementById('activeitem');
    if (!elem)
        return;
    var position = $ionicPosition.position(elem);     

};