<p id="shortText">
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum nec mi eget nisi rhoncus efficitur sit amet at quam. Cras non venenatis ipsum, in dictum libero. Aenean gravida tristique ultrices.
<a href="#" id="expandLink" onclick="expandText()">Развернуть</a>
</p>
<script>
function expandText() {
var shortText = document.getElementById('shortText');
var expandLink = document.getElementById('expandLink');
var fullText = shortText.textContent;
if (fullText.length > 200) {
var truncatedText = fullText.substring(0, 200);
var remainingText = fullText.substring(200);
// Создаем новый элемент <span> для скрытого текста
var extraTextElement = document.createElement('span');
extraTextElement.textContent = remainingText;
extraTextElement.style.display = 'none'; // Скрываем его изначально
// Добавляем скрытый текст после оригинального параграфа
shortText.appendChild(extraTextElement);
// Переключаем текст ссылки и показываем/скрываем дополнительный текст при клике
expandLink.textContent = 'Свернуть';
expandLink.onclick = function() {
extraTextElement.style.display = extraTextElement.style.display === 'none' ? 'inline' : 'none';
expandLink.textContent = extraTextElement.style.display === 'none' ? 'Развернуть' : 'Свернуть';
};
// Отображаем ссылку только если есть скрытый текст
if (remainingText.trim() !== '') {
expandLink.style.display = 'inline';
} else {
expandLink.style.display = 'none';
}
}
}
</script>
@bot.event
async def on_button_click(interaction):
if interaction.custom_id.startswith('lang_'):
lang_code = interaction.custom_id.split('_')[1]
selected_language = languages.get(lang_code)
await welcome_message(interaction.channel, selected_language)
elif interaction.custom_id == 'start_button':
# Обработка нажатия кнопки "Начать"/"Почати"/"Start"
await interaction.channel.send("Вы нажали кнопку 'Начать'!")
# Остальной код оставьте без изменений.
using System;
class FirstClass
{
public int Value { get; set; }
}
class SecondClass
{
public FirstClass First { get; set; }
public void ChangeValue(int newValue)
{
First.Value = newValue;
}
}
class Program
{
static void Main(string[] args)
{
var first = new FirstClass();
var second = new SecondClass();
second.First = first;
second.ChangeValue(42);
Console.WriteLine(first.Value); // Выведет 42
}
}
window.addEventListener("DOMContentLoaded", function() {
[].forEach.call(document.querySelectorAll('.tel'), function(input) {
var keyCode;
function mask(event) {
event.keyCode && (keyCode = event.keyCode);
var pos = this.selectionStart;
if (pos < 3) event.preventDefault();
var matrix = "+7 (____) ____-___",
i = 0,
def = matrix.replace(/\D/g, ""),
val = this.value.replace(/\D/g, ""),
new_value = matrix.replace(/[_\d]/g, function(a) {
return i < val.length ? val.charAt(i++) || def.charAt(i) : a;
});
i = new_value.indexOf("_");
if (i != -1) {
i < 5 && (i = 3);
new_value = new_value.slice(0, i);
}
var reg = matrix
.substr(0, this.value.length)
.replace(/_+/g, function(a) {
return "\\d{1," + a.length + "}";
})
.replace(/[+()]/g, "\\$&");
reg = new RegExp("^" + reg + "$");
if (!reg.test(this.value) || this.value.length < 5 || (keyCode > 47 && keyCode < 58))
this.value = new_value;
if (event.type == "blur" && this.value.length < 5) this.value = "";
}
input.addEventListener("input", mask, false);
input.addEventListener("focus", mask, false);
input.addEventListener("blur", mask, false);
input.addEventListener("keydown", mask, false);
});
});
import disnake
from disnake.ext import commands
class Minigames(commands.Cog):
def __init__(self, bot):
self.bot = bot
@disnake.ui.button(label="b1", style=disnake.ButtonStyle.green, custom_id="test1")
async def button_callback(self, interaction: disnake.Interaction, button: disnake.ui.Button):
await interaction.response.defer()
await interaction.send("clicked!")
@commands.command(name="test")
async def test(self, ctx: disnake.MessageInteraction):
view = disnake.ui.View()
view.add_item(disnake.ui.Button(label="Button 1", custom_id="test1"))
msg = await ctx.send(content="1", view=view)
const pizzaTimer = (ms) => {
const target = new Date().getTime() + ms + 100; // 100 это смещение для setInterval, так-как setInterval не всегда точно спустя 1 секунду обновляется
const interval = setInterval(() => {
const remainingTime = target - new Date().getTime(); // Вычисление оставшегося времени в миллисекундах
if (ms > 3_600_000) {
console.log(
new Intl.DateTimeFormat(navigator.language, {
hourCycle: 'h23',
hour: 'numeric',
minute: 'numeric',
second: 'numeric',
}).format(remainingTime)
);
} else {
console.log(
new Intl.DateTimeFormat(navigator.language, {
minute: 'numeric',
second: 'numeric',
}).format(remainingTime)
);
}
}, 1000);
setTimeout(() => {
console.log('pizza time');
clearInterval(interval);
}, ms);
};
console.log(pizzaTimer(3_610_000));
#include <avr/io.h>
#include <avr/interrupt.h>
#include <math.h>
#define F_CPU 8000000UL
#define VFG_TIMER_MAX 65535
float fG = 100;
unsigned char nG;
unsigned int N[] = {1, 8, 64, 256, 1024};
void Tim1Init(void)
{
DDRB |= (1 << PB0); // Set pin as OUTPUT
TCCR1A = (1 << COM1A0); // Toggle on compare
TCCR1B = (1 << WGM12) | (1 << CS12) | (1 << CS10); // Set timer CTC mode
TIMSK = (1 << OCIE1A);
SetUpTim1A(fG);
sei(); // Enable global interrupts
}
void SetUpTim1A(float Foc) // Set value OCR1A register
{
float TimDiv, OCRnx_calc = 0;
unsigned int ret_OCRnx = 0;
unsigned char ClockSelect = 0;
unsigned char i = 0;
for (i = 0; i < 5; i++) {
TimDiv = (F_CPU / (2 * Foc * N[i]) - 1);
OCRnx_calc = ceil((TimDiv / Foc) - 1);
if (OCRnx_calc >= 0 && OCRnx_calc < VFG_TIMER_MAX) {
ClockSelect = i + 1;
break;
}
ret_OCRnx = (unsigned int)OCRnx_calc;
OCR1A = ret_OCRnx;
TCCR1B = (1 << WGM12) | ClockSelect;
}
}
ISR(TIMER1_COMPA_vect)
{
PORTB ^= (1 << PB0);
}
int main(void)
{
Tim1Init();
while (1) {
// Ваш код здесь
// Измените значение переменной fG и nG в соответствии с вашими требованиями
// Затем вызовите SetUpTim1A(fG) снова, чтобы обновить частоту
fG = 200; // Пример изменения значения переменной fG
SetUpTim1A(fG); // Обновление частоты
nG = 1; // Пример изменения значения переменной nG
// Используйте значение переменной nG для настройки соответствующего порта
// Ваш дополнительный код здесь
// Пример задержки между изменениями частоты
_delay_ms(1000);
}
return 0;
}
import pytest
from unittest import mock
class B:
def __init__(self, db_connection):
self.__db_connection = db_connection
class A:
def __init__(self, b: B):
self.__b = b
def do_something(self) -> None:
pass
@pytest.fixture(scope="module")
def mock_b(mocker):
mocker.patch('path.to.B') # Здесь 'path.to.B' - это путь к классу B, который нужно замокать
return B(mock.MagicMock()) # Возвращаем экземпляр класса B с мок-объектом для db_connection
chrome.runtime.onMessage.addListener(function(request, sender, sendResponse) {
if (request.action === "playSound" && request.sound) {
var audio = new Audio(chrome.runtime.getURL(request.sound));
audio.play();
}
});
function refreshPage() {
chrome.tabs.query({ active: true, currentWindow: true }, function(tabs) {
var tabId = tabs[0].id;
chrome.tabs.reload(tabId);
});
}
setInterval(refreshPage, 30 * 1000);
$data = array(
"update_id" => 1111111,
"message" => array(
"message_id" => 111,
"from" => array(
"id" => 1111111,
"is_bot" => false,
"first_name" => "2222222",
"last_name" => "3333333",
"username" => "4444444444",
"language_code" => "ru"
),
"chat" => array(
"id" => -5555555555,
"title" => "Test 666666",
"type" => "supergroup"
),
"date" => 77777777,
"message_thread_id" => 8888,
"reply_to_message" => array(
"message_id" => 9999,
"from" => array(
"id" => 0000000000000,
"is_bot" => true,
"first_name" => "---------test",
"username" => "9999999"
),
"chat" => array(
"id" => -00000000000000,
"title" => "Test --------",
"type" => "supergroup"
),
"date" => "=====99999",
"text" => "ghbdtn"
),
"text" => "Аоатт"
)
);
$text = $data["message"]["text"];
echo $text; // Выведет "Аоатт"
#!/bin/bash
# Определение массива ID пользователей из файла
mapfile -t chat_ids < users.txt
# Перебор ID пользователей
for chat_id in "${chat_ids[@]}"; do
# Выполнение команды curl с использованием текущего ID чата
curl -X POST -H "Content-Type: application/json" -d '{"chat_id": "'"${chat_id}"'", "text": "Ваше сообщение"}' https://api.telegram.org/bot<YOUR_BOT_TOKEN>/sendMessage
done
import javafx.application.Application;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.layout.Pane;
import javafx.scene.paint.Color;
import javafx.scene.shape.Line;
import javafx.scene.transform.Rotate;
import javafx.stage.Stage;
public class RotateExample extends Application {
@Override
public void start(Stage primaryStage) {
Pane pane = new Pane();
Scene scene = new Scene(pane, 400, 400);
Group group = new Group();
pane.getChildren().add(group);
// Создание фигуры (в данном случае - линии)
Line line = new Line(100, 100, 200, 100);
line.setStroke(Color.BLACK);
group.getChildren().add(line);
// Создание объекта Rotate
Rotate rotate = new Rotate(90, 150, 100); // Угол поворота 90 градусов, точка вращения (150, 100)
line.getTransforms().add(rotate);
primaryStage.setScene(scene);
primaryStage.show();
}
public static void main(String[] args) {
launch(args);
}
}
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Мой лендинг</title>
</head>
<body>
<h1>Мой лендинг</h1>
<iframe src="https://www.demoslot.com/milkshake-xxxtreme-slot.html" width="800" height="600" frameborder="0"></iframe>
</body>
</html>
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<style>
.cube {
position: relative;
display: inline-block;
height: 50px;
width: 75px;
top: 250px;
left: 500px;
background-color: blue;
color: white;
text-align: center;
line-height: 50px;
font-family: Arial, sans-serif;
font-size: 14px;
}
</style>
</head>
<body>
<div class="content">
<div class="cube cube1">text</div>
<div class="cube cube2">text</div>
<div class="cube cube3">text</div>
</div>
</body>
</html>