正如您在wifi.js文件中看到的,有一个用于表行的单击函数。我想它看起来很好。这是一个非常简单的console.log被点击的行,对吗?不幸的是,我不会像我期望的那样工作,无论什么情况下都会把这个"jQuery.fn.init全局“返回给控制台。以我目前的知识,我不能解决这个问题。
wifi.js文件
var wifi = require('node-wifi');
// Initialize wifi module
// Absolutely necessary even to set interface to null
var jQuery = function (selector, context) {
// The jQuery object is actually just the init constructor 'enhanced'
// Need init if jQuery is called (just allow error to be thrown if not included)
return new jQuery.fn.init(selector, context);
};
let allNetworks = [];
// Scan networks
wifi.init({
iface: null // network interface, choose a random wifi interface if set to null
});
setInterval(() => {}, 5000);
wifi.scan((error, networks) => {
if (error) {
console.log(error);
} else {
allNetworks = networks;
let rows = [];
$('#tbody').empty();
allNetworks.map(network => {
let row = `<tr><td>${network.mac}</td><td>${network.ssid}</td><td>${network.quality}</td><td>${network.signal_level}</td></tr>`;
$("#tbody").append(row);
rows.push(row);
})
$("tr").on("click", () => {
console.log($(this));
})
}
});这是我的index.html
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<script>
if (typeof module === 'object') { window.module = module; module = undefined; }
</script>
<!-- https://developer.mozilla.org/en-US/docs/Web/HTTP/CSP -->
<script type="text/javascript" src="node_modules/jquery/dist/jquery.js"></script>
<script>
if (window.module) module = window.module;
</script>
<title>electronWifi!</title>
</head>
<body>
<table>
<thead>
<tr><td>q</td><td>w</td><td>e</td><td>r</td></tr>
</thead>
<tbody id='tbody'>
</tbody>
</table>
<!-- You can also require other files to run in this process -->
</body>
<script src="./renderer.js"></script>
<script src="src/wifi.js"></script>
</html>发布于 2021-02-12 02:39:06
当我像这样更改代码时,事件侦听器似乎不能使用箭头函数。
$("tr").on("click", function () {
console.log($(this));
});像个护身符一样工作
https://stackoverflow.com/questions/66158042
复制相似问题