描述:
我有一个从indexedDB获取记录的函数。当函数调用绑定到使用'jquery.click‘的元素时,它工作正常,但是当我使用'jquery.bind’绑定相同的元素时,它会使webapp崩溃。在调试时发现应用程序会在request.onsuccess事件上崩溃。
平台: Ipad (iOs 10及以上版本),浏览器
问题: 'jquery.bind‘不起作用。
我尝试过的场景:
示例:
$('#ABC').bind('click', function(e) {
var transaction = db.transaction(['Table1'],'readonly')
var objStore = transaction.objectStore('Table1');
var request = objStore.getAll()
request.onsuccess = function (event) {
console.log(event);
})})
在上面的场景中,当事件被触发时,应用程序会崩溃,但是如果我们使用jquery.click,它就可以正常工作。
请帮帮忙。
发布于 2017-09-08 13:50:25
看起来,您正在使用一个全局数据库变量,并试图在应用程序的生存期内重用相同的数据库连接。不能保证在单击事件发生时定义并打开数据库。它可能还没有打开,它可能已经关闭,甚至可能没有被定义为一个变量。先试试这个。
其他说明:
发布于 2017-09-08 16:38:53
getAll() on IDBObjectStore直到Safari10.1(参见http://caniuse.com/#feat=indexeddb2)才被支持--我认为这还没有与iOS更新一起发布。(至少,我的iPhone在用户代理中报告了10.0。)您确定在其他情况下这在平台上起作用吗?还是错误没有被报告?
正如另一个Josh指出的,很难确切地知道您正在看到什么问题--如果通过“崩溃”您得到了一个异常,您能告诉我们异常信息是什么吗?
https://stackoverflow.com/questions/46113095
复制相似问题