Действительно ли Апплеты Java неспособны общаться с JavaScript в рамках Firefox на Mac OS?

Мы можем решить вашу проблему несколькими способами, я покажу вам два пути здесь.

  1. С Boolean indexing
  2. С запросом.

Обратите внимание, поскольку ваш столбец IsInScope имеет тип bool, мы можем немного очистить ваш код следующим образом:


1. Логическое индексирование

df1 = df[df['IsInScope'] & (df['CostTable'] == 'Standard')]

Выход

print(df1)
         Date        Type  IsInScope CostTable  Value
0  2017-04-01  CostEurMWh       True  Standard   0.22
1  2018-01-01  CostEurMWh       True  Standard   0.80
2  2019-01-01  CostEurMWh       True  Standard   1.72
<час>

2. DataFrame.query

df2 = df.query("IsInScope  & CostTable == 'Standard'")

Вывод

print(df2)
         Date        Type  IsInScope CostTable  Value
0  2017-04-01  CostEurMWh       True  Standard   0.22
1  2018-01-01  CostEurMWh       True  Standard   0.80
2  2019-01-01  CostEurMWh       True  Standard   1.72

Примечание нам не нужно явно указывать Python IsInScope == True:

x = [True, False]

for y in x:
    if y:
        print(y)

Вывод

True
12
задан Sébastien Nussbaumer 24 February 2009 в 14:12
поделиться

3 ответа

Это работало бы через доступ к одному из глобальных объектов на экране?Следовательно,

В JavaScript:

window.testfunc = function() { //... }

В апплете:

win.eval("window.testfunc()") // or maybe just win.eval("testfunc()")

Это было бы моим экспериментом. Но я звонил "window.close ()" на FF на Mac OS X, и это все еще работает.

3
ответ дан 2 December 2019 в 23:08
поделиться

Я не использовал API апплета в некоторое время, но если я вспоминаю правильно для разрешения Апплета cann JS код, который необходимо включить атрибуту mayscript в теге апплета или параметрическом усилителе mayscript в нотации тега object.

Для коммуникации другим способом JS к Апплету необходимо также использовать scriptable атрибут или параметр, например:

<applet code="..." mayscript="true" />

Это позволяет Вашему апплету использовать функции сценария.

<applet code="..." scriptable="true" />
4
ответ дан 2 December 2019 в 23:08
поделиться

Если вы удалите все вызовы свойств апплета, вы круты.

Это может произойти и в других ситуациях. Я нашел эту страницу после поиска в Google похожей проблемы, поэтому решил добавить точку данных. Единственное отличие состоит в том, что я использовал win.call (), а не win.eval ().

У меня был вызов alert () в JavaScript, чтобы убедиться, что вызов прошел, и я увидел то, что выглядит точно та же самая блокировка на Firefox 3.0.9, OS X 10.5.6, Java 1.5.0_16. 100% повторяемость с Firefox, без проблем в Safari (у меня не установлена ​​Windows на этом устройстве).

Когда я избавился от alert () и просто возвратил значение, проблема исчезла.

Оооочень ... может, через некоторое время вызывается тайм-аут JavaScript и просто выбрасывает ноль?

0
ответ дан 2 December 2019 в 23:08
поделиться