目的是不斷讀取后臺tomcat的日志,為了性能,jquery對象提早用全局變量記錄好了。但是發(fā)覺在onmessage方法里,操作該對象,F12調試里看到div的html內容都正常,但是界面沒有實際效果。非要直接寫jquery對象才可以,用不了全局的定義。請大伙直接看注釋部分↓<div id="app"> <div id="log-container" style="height: 650px; overflow-y: scroll; background: #333; color: #aaa; padding: 10px;"> <div> </div> </div></div><script> let a=1; let $div = $("#log-container div").eq(0); let $container = $("#log-container"); let vm = new Vue({ el: '#app', data: { ws: null, webHost: window.location.host }, created() { this.ws = new WebSocket('ws://' + this.webHost + '/log'); $div.append('1'); // 成功 this.ws.onmessage = function (event) { ++a; // 成功 $div.html(a); // 無效果 $container.scrollTop($div.height() - $container.height()); // 成功 }; this.ws.onerror = function (evt) { alert("出錯啦"); }; }, methods: {} });</script>
js的WebSocket的onmessage方法遇到jquery的奇怪現象
繁華開滿天機
2019-03-15 18:15:24