Как мне преобразовать это в jquery?
Вот HTML и JavaScript, которые я использую для этого.
HTML - это таблица с 2 числами и областью ввода. Предполагается, что пользователь должен
Вот мой JavaScript. Моя проблема в том, что мне нужно использовать jQuery. Все, что я пытаюсь сделать, не работает.
Что я уже пробовал:
<pre><pre lang="HTML"> <pre> <pre><!Doctype html> <html> <head> <link rel="stylesheet" href="assignment-Jasmine.css"> <title>JavaScript to JQuery</title> <script src="https://code.jquery.com/jquery-3.5.1.min.js" integrity="sha256-9/aliU8dGd2tb6OSsuzixeV4y/faTqgFtohetphbbj0=" crossorigin="anonymous"> </script> <style> td{ padding-top: 5px; padding-bottom: 5px; padding-right: 20px; padding-left: 20px; } .wrong { background-color: #fa8072; } .right { background-color: transparent; } </style> </head> <body>
Математика!
Попробуйте посмотреть, если вы можете сделать математику
5 | 3 | |
7 | 6 | |
5 | 5 | |
8 | 3 | |
4 | 7 | |
3 | 9 | |
8 | 5 | |
2 | 6 | |
5 | 9 | |
6 | 6 |
</body> </html>
<pre lang="Javascript"> <pre> (function( math ) { 'use strict'; var tr = math.querySelectorAll( 'tr' ), td = math.querySelectorAll( 'td' ), inp = math.querySelectorAll( 'input' ), totals = [], c; for ( c = 0; c < tr.length; c ++ ) { totals.push( parseFloat( td[ c * 3 ].textContent ) + parseFloat( td[ c * 3 + 1 ].textContent ) ); inp[ c ].value = ' '; inp[ c ].addEventListener( 'blur', check_answer( c ), false ); } function check_answer( c ) { inp[ c ].onblur = function() { if( inp[ c ].value == totals[ c ] ) { tr[ c ].classList.add( 'right' ); } else { tr[ c ].classList.remove( 'right' ); tr[ c ].classList.add( 'wrong' ); } } } }( document ) ); $( window ).unload(function(math) { });
F-ES Sitecore
querySelectorAll составляет всего $, так что $("тр") и метода addEventListener "ВКЛ". Вы даже можете заменить петли на "каждый". Посмотрите на документы jQuery, они довольно обширны с примерами.
Member 14825986
Это даже близко
$(итоги) = [], c;
$('tr','td','input'){
каждый(( c = 0; c < tr.length; c ++ ) {
totals.push( parseFloat( td[ c * 3 ].textContent ) +
parseFloat( td[ c * 3 + 1 ].textContent ) );
ИЯФ[ с ].значение = ' '; } )
onblur('blur', check_answer( c ), false )
};
$(check_answer(с)){
onblur( if( inp[ c ].value == итоги[ c ] ) {
ТР[ с ].classList.добавить ("право" );
}
еще {
tr[ c ].classList.remove( 'right' );
ТР[ с ].classList.добавить( 'неправильно' );
})
};
$( window ).unload(функция(математика) {
});
ZurdoDev
Почему вам нужно использовать jquery? jQuery - это javascript. Мне это нравится, но ты не обязан им пользоваться.
Member 14825986
Меня просят изменить его.
Maciej Los
Используйте виджет "ответить", чтобы быть уверенным, что система сообщит участнику о вашем ответе.
Вы найдете этот виджет в правой части Ника/логина участника.