Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/405.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
blackberry上的Javascript回调_Javascript_Blackberry_Mobile_Mobile Phones - Fatal编程技术网

blackberry上的Javascript回调

blackberry上的Javascript回调,javascript,blackberry,mobile,mobile-phones,Javascript,Blackberry,Mobile,Mobile Phones,我正在处理一个移动项目,我有一个在后端动态生成的脚本,然后附加到文档(html页面)中。桌面浏览器似乎正确地附加了脚本并调用了脚本中的任何函数,然而,我无法在黑莓手机上实现这一点。我知道脚本正在追加,因为我可以在追加脚本后向它发出警报。我可以让它调用脚本中的函数 例如,如果我有这样的代码: var scriptText = document.createElement('script'); scriptText.type = 'text/javascript'; scriptText.id =

我正在处理一个移动项目,我有一个在后端动态生成的脚本,然后附加到文档(html页面)中。桌面浏览器似乎正确地附加了脚本并调用了脚本中的任何函数,然而,我无法在黑莓手机上实现这一点。我知道脚本正在追加,因为我可以在追加脚本后向它发出警报。我可以让它调用脚本中的函数

例如,如果我有这样的代码:

var scriptText = document.createElement('script');
scriptText.type = 'text/javascript';
scriptText.id = 'thisScript';
scriptText.innerHTML = 'alert("hello");';
document.getElementById('idName').appendChild(scriptText);

alert(document.getElementById('thisScript')); //Alerts the script element.

这将在桌面浏览器甚至iPhone/iPodTouch中提醒“hello”,但在BlackBerry中不会。有人知道为什么吗?或者是否存在修复/破解问题?

您是否考虑过使用jQuery库来编写javascript?您只需要包含jQuery脚本库:

<script type="text/javascript" src="jquery.js" ></script>

…然后根据需要在jQuery的ready()函数中动态添加警报:

$(document).ready(function() {
    $('#header').append('<div class="testButton" onclick="alert(123)">Menu</div>');

    //or just like this:
    alert('hello 123');
$(文档).ready(函数(){
$('标题').append('菜单');
//或者像这样:
警报(“你好123”);

BB设备上的Javascript支持并不全面。您可以执行基本功能,但DOM操纵等高级功能没有很好的支持。大多数移动设备都是如此,Android、iPhone和WebOS除外。更新版本的BB设备将解决这一问题。

在移动电话中加载大型库不是一件容易的事好主意。只有最先进的设备才能处理像jquery一样复杂的javascript。我喜欢jquery,但它让我害怕人们在最简单的事情上默认使用它的速度有多快。在有限的平台上也一样。转到浏览器->选项->浏览器配置->向下滚动->启用“支持javascript”->保存选项