JavaScript не работает в Tizen Web Widget - PullRequest
0 голосов
/ 09 февраля 2020

Я работаю над приложением Tizen Web Widget . Мой javaScript файл находится в MyProject >> widget >> MyProject >> js >> main.js. Даже если я изменю текст элемента в методе window.onload(), он не будет работать.

Я также попробовал принятый ответ из this вопрос, но это также не сработало для меня. Кто-нибудь, пожалуйста, ведите меня, если есть какая-то другая проверка, по которой я скучаю.

1 Ответ

0 голосов
/ 13 февраля 2020

При написании веб-виджета большинство проблем вызвано тем, что у него ограниченное число поддерживаемых функций. Например, не поддерживается innerText и inner HTML, который можно использовать для изменения содержимого html с javascript 'по умолчанию'.

Для изменения содержимого HTML элемент, который вы должны использовать вместо textContent . Я попытался воспроизвести вашу проблему следующим образом:

index. html

<!DOCTYPE html>
<html>
<head>
  <meta charset="UTF-8">
  <link rel="stylesheet" type="text/css" href="css/style.css">
  <script src="js/main.js"></script>
  <style></style>
</head>

<body>
  <div id="page">
    <div id="container" onclick="changeContent()">
      <span id="content-text">Widget</span>
    </div>
  </div>
</body>
</html>
var changed = true;
window.onload = function() {
  console.log('[window.onload]');
  var box = document.getElementById("content-text");
  box.textContent = "starting content"
};

changeContent = function() {
    var box = document.getElementById("content-text");
    console.log('changeContent: ' + box.textContent)
    box.textContent = changed ? "abcdef" : "xyz";
    changed = !changed;
};

и код хорошо работает на эмуляторе Tizen.

Возможно, что Вы используете функцию, которая не поддерживается. Я предлагаю вам внимательно проверить функции, не поддерживаемые в Web Widget, и просто не использовать их в своей реализации.

...