Ответ на вопрос о том, почему вы получили сообщение об ошибке, уже ответили многие пользователи здесь. Мой ответ о том, как исправить и использовать его как есть.
Обратитесь к этой ссылке .
use my_database_name;
База данных изменена
blockquote>
set global innodb_large_prefix=on;
Запрос ОК, 0 строк затронуты (0.00 сек)
blockquote>
set global innodb_file_format=Barracuda;
Query OK, 0 строк затронуты (0,02 сек)
blockquote>
- Перейдите в свою базу данных на phpMyAdmin или что-то вроде этого для удобства управления. > Выберите базу данных> Просмотреть структуру таблицы> Перейдите на вкладку «Операции». > Измените ROW_FORMAT на DYNAMIC и сохраните изменения.
- Перейдите на вкладку структуры таблицы> Нажмите кнопку «Уникальная».
- Готово. Теперь у него не должно быть ошибок.
Проблема этого исправления заключается в том, что вы экспортируете db на другой сервер (например, с локального хоста на реальный хост), и вы не можете использовать командную строку MySQL на этом сервере , Вы не можете заставить его работать.
Начиная с версии jQuery 1.1.3, event.which
нормализует event.keyCode
и event.charCode
, поэтому вам не нужно беспокоиться о совместимости с браузером. вопросы. Документация по event.which
event.which
даст 1, 2 или 3 для левой, средней и правой кнопок мыши соответственно, поэтому:
$('#element').mousedown(function(event) {
switch (event.which) {
case 1:
alert('Left Mouse button pressed.');
break;
case 2:
alert('Middle Mouse button pressed.');
break;
case 3:
alert('Right Mouse button pressed.');
break;
default:
alert('You have a strange Mouse!');
}
});
$("#element").live('click', function(e) {
if( (!$.browser.msie && e.button == 0) || ($.browser.msie && e.button == 1) ) {
alert("Left Button");
}
else if(e.button == 2){
alert("Right Button");
}
});
Обновление для текущее состояние вещей:
var $ log = $ ("div.log"); $ ("div.target"). on ("mousedown", function () {$ log.text ("What:" + event.which); if (event.which === 1) {$ (this). removeClass ("справа посередине"). addClass ("left");} else if (event.which === 2) {$ (this) .removeClass ("left right"). addClass ("middle");} else if (event.which === 3) {$ (this) .removeClass ("левый средний"). addClass ("right");}});
div.target {граница: 1px сплошной синий; высота: 100 пикселей; ширина: 100 пикселей; } div.target.left {цвет фона: # 0faf3d; } div.target.right {цвет фона: # f093df; } div.target.middle {цвет фона: # 00afd3; } div.log {выравнивание текста: слева; цвет: # f00; }
div>
Вы можете легко определить, какая кнопка мыши была нажата, проверив свойство which
объекта события для событий мыши:
/*
1 = Left mouse button
2 = Centre mouse button
3 = Right mouse button
*/
$([selector]).mousedown(function(e) {
if (e.which === 3) {
/* Right mouse button was clicked! */
}
});
Мне кажется, что небольшая адаптация ответа TheVillageIdiot была бы чище:
$('#element').bind('click', function(e) {
if (e.button == 2) {
alert("Right click");
}
else {
alert("Some other click");
}
}
РЕДАКТИРОВАТЬ: JQuery предоставляет атрибут e.which
, возвращающий 1, 2, 3 для левого, среднего и правого щелчка соответственно. Таким образом, вы также можете использовать if (e.which == 3) {alert ("щелкните правой кнопкой мыши"); }
См. Также: ответы на «Запуск события onclick с помощью средней кнопки мыши»