JavaScript отключил лучшие практики? [закрытый]

Как сказал phydeaux, вы можете сделать это, просто передав переменные в качестве параметров.

полный исправленный код, показанный ниже:

from tkinter import *

def print_name(entry_location):
    print(entry_location.get())

def main(main_window, entry_location):
    main_window =Tk()
    Button(main_window, text="Print Name",command=print_name) .pack()
    entry_location = Entry(main_window)
    entry_location.pack()
    main_window.mainloop()

main(main_window, entry_location)
9
задан tkotitan 4 March 2009 в 15:33
поделиться

9 ответов

То, что я иногда делаю, установлено функции, которые требуют, чтобы JavaScript не отобразился, затем использовал JavaScript, чтобы заставить их отобразиться. Тем путем люди с привычкой JavaScript видят функции, которые они не могут использовать. И затем вставленный в альтернативные функции <noscript> теги.

11
ответ дан 4 December 2019 в 07:24
поделиться

При использовании JavaScript для открытия окна из ссылки, можно сделать его прозрачным так, чтобы он отступил к исходному поведению ссылки, если JavaScript будет отключен:

<a href="http://www.guffa.com" target="_blank" onclick="window.open(this.href,this.target,'width=900,height=700');return false;">Guffa</a>

Если JavaScript будет включен, то onclick событие получит щелчок и откроет окно, то это возвращает false от события так, чтобы по ссылке не переходили. Если Jasvascript будет отключен, то по ссылке перейдут вместо этого.

3
ответ дан 4 December 2019 в 07:24
поделиться

Можно использовать <noscript> тег для создания гиперссылки, какая цель является _blank для открытия нового окна.

Это также хорошо для SEO так, чтобы поисковая система как Google и Yahoo! могла определить и проверить Ваши ссылки на Ваших веб-страницах.

<noscript> может также предоставить нормальную функцию тем js-disabled браузер.

3
ответ дан 4 December 2019 в 07:24
поделиться

Stackoverflow обрабатывает это хорошим способом. Сайт абсолютно применим без JavaScript, можно задать вопросы и ответить на них. Расширенные функции как голосование не работают.

Необходимо найти компромисс между временем, которое Вы готовы провести для создания сайта применимым без JavaScript и суммы функций, которые должны работать.

4
ответ дан 4 December 2019 в 07:24
поделиться

"Я предположил бы, что существует все еще много, можно обойтись без JavaScript" - забавный, не так давно мы сделали все без JavaScript.

Лучший подход - то, что известно как 'прогрессивное улучшение'. Принцип должен сделать что-то, что работает без JavaScript и затем 'слоя' на дополнительных поведениях путем привязки JavaScript с объектами. Библиотеки, такие как jQuery делают это простым, поскольку они поддерживают селекторы стиля CSS. Тем путем можно применить поведения JS почти тот же способ, которым Вы применили бы CSS (хорошо, небольшое преувеличение).

Некоторая мысль должна быть взята для размышления о том, что является хорошей базовой линией и как должны быть изменены страницы.

Часто реальная дополнительная работа в серверной стороне, где у Вас, вероятно, придется быть несколько систем обработки запросов. Это - что-то вроде большого поля для обращения в одном небольшом ответе!

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

Пример? Возьмите что-то простое, например, Вы хотите отобразить хорошие 'подсказки' полями формы когда пользовательские мыши им. В HTML они могли (например), быть повышены как абзацы:

<label for="username">User name</label><input type="text" id="username" />
<p>Username must be between 6-8 characters</p>

Для не пользователи JS, подсказка может просто быть отображена как хороший абзац. Таким образом, Вы разрабатываете это с CSS. Имейте дополнительный CSS для пользователей JS, который скрывает абзац по умолчанию. Так: 2 набора CSS, каждый переопределяет другой.

не JS:

form p {
    margin: 10px 0 0 0;
    border-bottom: 1px solid grey;
}

js:

form p {
    position: absolute; display: none;
    width: 180px;
    background-image: url(nice-bubble.gif);
    padding: 10px;
}

Как Вы подаете заявку, CSS для ситуаций JS/non JS ваше дело. Существуют многочисленные опции. Лично мне нравится кодировать для JS в CSS и иметь noscript.css вариант (т.е. работающий назад) в теге. Который не является допустимым XHTML, но работает приятно.

Затем имейте некоторый JS, который ищет элементы и управляет кодом дисплея для подсказок. например:

$(document).ready(function() {
    $('form input').focus(function() {...display paragraph...});
    // etc;
})

Это - поддельный код, но Вы получаете изображение. То, с чем Вы заканчиваете, является 1 набором HTML с 2 презентациями, и дополнительными поведениями и никаким JS, запутанным в Вашем HTML самом.

3
ответ дан 4 December 2019 в 07:24
поделиться

Для открытия ссылок в новых окнах можно использовать цель = "_ пробел"

<a href="http://www.google.com" target="_blank">Google</a>

Где я работаю, мы используем целевую страницу для обеспечения (до известной степени), что им включили JavaScript, прежде чем они войдут в приложение...

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
  <head>
    <meta http-equiv="content-type" content="text/html;charset=utf-8" />
    <title>Please Wait...</title>
  </head>
  <body>
    <h1>Please Wait....</h1>
    <noscript><h1>You need a JavaScript-enabled browser to use this application!</h1></noscript>
    <script type="text/javascript">
      <!--
        location.href = "FrontPage.aspx";
      // -->
    </script>
  </body>
</html>

Кроме того, я часто поражаюсь тем, как мощный CSS может быть.

5
ответ дан 4 December 2019 в 07:24
поделиться

jQuery действительно помогает. Много времени с большими плагинами JavaScript, (вкладки, подсказки, и т.д....) Вы пишете свою разметку очень семантическим способом.

Пример: плагин вкладок требует, чтобы Вы создали привязанные отделения, т.е.

<a href="#Preferences">Preferences</a>
<a href="#Tools">Tools</a>
<div id="Preferences">
   blah
</div>
<div id="Tools">
   bar
</div>

Это имеет смысл семантически, и без плагина вкладок, Вы получаете некоторую функциональность. Когда Вам включили JavaScript и вкладки jQuery, тем не менее, Вы получаете действительно хороший, богатый интерфейс.

Это - действительно просто прогрессивное улучшение, как некоторые другие отметили. Запишите семантическую разметку, улучшите ее с CSS, затем улучшите ее с JavaScript. Необходимо закончить с чем-то, что работает на всех, даже пользователи рыси.

0
ответ дан 4 December 2019 в 07:24
поделиться

Вот вопрос (и другой), которые имеют много (отличающихся) мнений о создании сайта, который корректно обрабатывает отключаемый JavaScript.

0
ответ дан 4 December 2019 в 07:24
поделиться

Люди, запрещающие JavaScript, могли бы также обрезать CSS, Java и другую функциональность "презентации" для сохранения вычислительной мощности на ниже приводимом в действие браузере. (Например, веб-телефонный или более старый образцовый компьютер.) Вы могли смягчить это несколько путем добавления простой функциональности к серверу, как они действительно отступали в эпоху CGI (случайное введение здесь). В этом случае Ваш сервер мог перенаправить пользователей non-JS к версии страницы GET/POST. Я также сделал бы ответы максимально простыми и неукрашенными, так как Вы могли бы вывести на крошечный экран.

1
ответ дан 4 December 2019 в 07:24
поделиться
Другие вопросы по тегам:

Похожие вопросы: