Другой вариант - использовать https://github.com/spulec/freezegun/
Установить его:
pip install freezegun
И использовать его :
from freezegun import freeze_time
@freeze_time("2012-01-01")
def test_something():
from datetime import datetime
print(datetime.now()) # 2012-01-01 00:00:00
from datetime import date
print(date.today()) # 2012-01-01
Он также влияет на другие вызовы datetime в вызовах методов из других модулей:
other_module.py:
from datetime import datetime
def other_method():
print(datetime.now())
main.py:
from freezegun import freeze_time
@freeze_time("2012-01-01")
def test_something():
import other_module
other_module.other_method()
И, наконец:
$ python main.py
# 2012-01-01
Если вы не хотите, чтобы он указывал ни на что, вам, вероятно, не следует использовать тег
(привязка).
Если вы хотите, чтобы что-то выглядело как ссылка, но не действовало как ссылка, лучше использовать соответствующий элемент (например,
), а затем стилизовать его с помощью CSS:
<span class="fake-link" id="fake-link-1">Am I a link?</span>
.fake-link {
color: blue;
text-decoration: underline;
cursor: pointer;
}
Кроме того, учитывая, что вы отметили этот вопрос "jQuery", я предполагаю, что вы хотите прикрепить обработчик события щелчка. Если это так, просто сделайте то же, что и выше, а затем используйте что-то вроде следующего JavaScript:
$('#fake-link-1').click(function() {
/* put your code here */
});
Думаю, вы можете попробовать
<a href="JavaScript:void(0)">link</a>
Единственная загвоздка, которую я вижу здесь, - высокий уровень безопасности браузера может запрашивать выполнение javascript.
Хотя это один из более простых способов, чем
<a href="#" onclick="return false;">Link</a>
, его следует использовать с осторожностью
Прочтите эту статью, чтобы узнать о некоторых указателях https: //web.archive. org / web / 20090301044015 / http: //blog.reindel.com/2006/08/11/a-hrefjavascriptvoid0-avoid-the-void
Что вы имеете в виду под словом «ничего»?
<a href='about:blank'>blank page</a>
или
<a href='whatever' onclick='return false;'>won't navigate</a>
Правильный способ справиться с этим - «разорвать» ссылку с помощью jQuery, когда вы обрабатываете ссылку
HTML
<a href="#" id="theLink">My Link</a>
JS
$('#theLink').click(function(ev){
// do whatever you want here
ev.preventDefault();
ev.stopPropagation();
});
Эти последние два вызова останавливают интерпретацию браузером щелчка.
Чтобы он вообще ничего не делал, используйте это:
<a href="javascript:void(0)"> ... </a>
Есть несколько менее совершенных решений:
1. Ссылка на поддельный якорь
<a href="#">
Проблема: при нажатии на ссылку происходит возврат назад наверх страницы
2. Использование тега, отличного от 'a'
Используйте тег span и используйте jquery для обработки щелчка
Проблема: нарушает навигацию с клавиатуры, необходимо вручную изменить курсор наведения
3. Ссылка на функцию void javascript
<a href="javascript:void(0);">
<a href="javascript:;">
Проблема:разрывы при связывании изображений в IE
Решение
Поскольку все они имеют свои проблемы, решение, на котором я остановился, состоит в том, чтобы ссылаться на поддельный якорь, а затем возвращать false из метода onClick:
<a href="#" onClick="return false;">
Не самое краткие решения, но все проблемы решаются указанными выше методами.