$stmt = $db->prepare("SELECT * FROM moya_tablitsa WHERE id = :metka_parametra_identifikatora");
$stmt->bindParam(':metka_parametra_identifikatora', 123);
$stmt->execute();
$stmt = $db->prepare("SELECT * FROM moya_tablitsa WHERE id = ?");
$stmt->execute([123]);
$stmt = $db->prepare("SELECT * FROM moya_tablitsa WHERE id = ?");
$stmt->bindParam(1, 123); // 1 - это номер метки, 123 - значение параметра
$stmt->execute();
function addspan(word){
let vari='';
let letters = word.split('');
for(letter of letters)
vari += `<span class='cls'>${letter}<\/span>`;
return vari;
}
function textNodesUnder(node){
var all = [];
for (node=node.firstChild;node;node=node.nextSibling){
if (node.nodeType==3) all.push(node);
else all = all.concat(textNodesUnder(node));
}
return all;
}
nodes=textNodesUnder(document.querySelector('.block'));
nodes.forEach(node => {
tempnode=document.createElement("span");
tempnode.innerHTML=addspan(node.nodeValue);
node.parentElement.replaceChild(tempnode,node);
tempnode.outerHTML=tempnode.innerHTML;
});
function replaceText(node, replacer) {
if (node.nodeType === Node.ELEMENT_NODE) {
node.childNodes.forEach(n => replaceText(n, replacer));
} else if (node.nodeType === Node.TEXT_NODE) {
node.textContent = replacer(node.textContent);
}
}
replaceText(document.body, str => str.replace(/\d/g, 'hello, world!!'));
function replaceText(node, replacer) {
const iter = document.createNodeIterator(node, NodeFilter.SHOW_TEXT);
for (let n = null; n = iter.nextNode();) {
n.nodeValue = replacer(n.nodeValue);
}
}
{
"name": "Test Extension",
"version": "1.0",
"manifest_version": 2,
"description": "Test",
"action": {
"default_icon": "icon.png",
"default_popup": "popup.html"
},
"host_permissions": ["https://example.com/"],
"content_scripts": [
{
"matches": ["https://example.com/*"],
"css": ["style.css"],
"js": ["script.js"]
}
]
}
manifest.json
, если я правильно вас понял. Ну и соответственно прописать правила для стилей в style.css
, желательно с припиской !important
, сделать popup окошко, ну и написать нужный вам скрипт. передать сюда аргументыЭто вы уже умеете, тут ничего сложого. Вызов функции с аргументами - это азбука программирования.
получить их в addCommentFnВы уже передаёте туда один аргумент
reset_timeComment
.const throttle = (func, ms) =>{
return function(additionalArgs){
...
func.apply(this, [() => {
clearInterval(timer);
localStorage.setItem('time_comment-last', 0);
recalls__columnReminder.removeClass('visible');
}, additionalArgs]);
...
}
function addCommentFn(reset_timeComment, additionalArgs) {
console.log(additionalArgs.arg1);
}
startThrottle({arg1: 42, arg2: 'foo'});
const throttle = (func, ms) =>{
return function(...additionalArgs){
...
func.apply(this, [
() => {
clearInterval(timer);
localStorage.setItem('time_comment-last', 0);
recalls__columnReminder.removeClass('visible');
},
...additionalArgs
]);
...
}
function addCommentFn(reset_timeComment, arg1, arg2) {
console.log(arg2);
}
startThrottle(42, 'foo'});
ClassName = ""
. Так же с помощью этого метода можешь дать класс, просто внутри написав название класса <button class="communication_button button button_type_1">Очистить</button>
PDOStatement::fetchAll() возвращает массив, содержащий все оставшиеся строки результирующего набора. Массив представляет каждую строку либо в виде массива значений одного столбца, либо в виде объекта, имена свойств которого совпадают с именами столбцов.https://www.php.net/manual/ru/pdostatement.fetchall.php
$('.recall__people-fio').on('click', function(){
$(this).toggleClass('elipsise');
});
/**/
func.apply( this, [ () => lastTime = $.now() ] );
/*****/
function addCommentFn(dethrot){
/****/
if(result.error){
dethrot();
}
/****/
}