我找到了修复WP在Cordova中弹跳的插件: https://github.com/vilic/cordova-plugin-fix-wp-bouncing
我想在我的MFP项目中实现该插件。
原生代码:
void border_ManipulationCompleted(object sender, ManipulationCompletedEventArgs e) {
browser.InvokeScript("eval", "FixWPBouncing.onmanipulationcompleted()");
}
Javascript代码:
exports.onmanipulationcompleted = function () {
exports.target = null;
};
exports.fix = function (target) {
if (!POINTER_DOWN) { return; }
if (!(target instanceof HTMLElement) && target.length) {
target = target[0];
}
target.addEventListener(POINTER_DOWN, function () { exports.target = target; }, false); };
plugin.xml:
<js-module src="www/fix-wp-bouncing.js" name="fix-wp-bouncing">
<clobbers target="FixWPBouncing" />
</js-module>
<!-- windows phone 8 -->
<platform name="wp8">
<config-file target="config.xml" parent="/*">
<feature name="FixWPBouncing">
<param name="wp-package" value="FixWPBouncing"/>
<param name="onload" value="true" />
</feature>
</config-file>
如何致电:
// call fix after deviceready.
var wrapper = document.getElementById('an-element-that-scrolls');
FixWPBouncing.fix(wrapper);
// I don’t have any idea where i must write this code below :
declare module FixWPBouncing {
/** when target is a JQuery, it process the first element only. */
export function fix(target: HTMLElement|JQuery): void;
}
从上面的代码中,这是我的解释:
call FixWPBouncing.fix(wrapper);
=&gt;它会调用javascript函数exports.fix,这个函数的目的是在触摸元素时添加事件监听器。
原生代码void border_ManipulationCompleted(object sender, ManipulationCompletedEventArgs e)
中的侦听器将触发javascript代码exports.onmanipulationcompleted
<param name="onload" value="true" />
=&gt;这个配置的目的是自动加载本机代码,所以我不需要调用cordova.exec
因此,我认为要集成javascript代码和本机代码,我需要:
<js-module src="www/fix-wp-bouncing.js" name="fix-wp-bouncing">
<clobbers target="FixWPBouncing" />
</js-module>
因此本机代码监听器将始终触发javascript代码。
因为从该链接,我们使用cordova.exec调用本机。 不使用自动加载并自动触发javascript代码。 如果我错了,请纠正我。
您是否有任何想法在MFP项目中实施:https://github.com/vilic/cordova-plugin-fix-wp-bouncing?
答案 0 :(得分:0)
如果要在Hybrid应用程序中实现Cordova插件,则必须遵循MobileFirst Platform Developer Center教程中提供的说明。
未经测试/支持基于其他指令实施它。
当然,你总是可以选择使用&#34; pure&#34; Cordova在MobileFirst Platform Foundation中的应用 7.1 ,无需通过与MPF相关的任何事情,而是遵循标准的Cordova程序。