You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
60 lines
1.6 KiB
60 lines
1.6 KiB
{{define "scripts"}}
|
|
<script src="/webassets/vue.js"></script>
|
|
<script src="/webassets/axios.min.js" ></script>
|
|
<script src="/webassets/vue-toasted.min.js"></script>
|
|
|
|
<script>
|
|
Vue.use(Toasted)
|
|
function onImageError(image){
|
|
image.onerror = "";
|
|
image.src = "/webassets/blank.png";
|
|
return true;
|
|
}
|
|
const limit = 300;
|
|
let elements = document.getElementsByClassName("useMore");
|
|
|
|
for (let index = 0; index < elements.length; index++) {
|
|
const element = elements[index];
|
|
let display= element.style.display;
|
|
let originalText= element.textContent;
|
|
if(originalText.length<=limit){
|
|
continue;
|
|
}
|
|
let newText= originalText.substr(0,limit);
|
|
|
|
let newElement = document.createElement(element.tagName);
|
|
newElement.textContent=newText;
|
|
|
|
|
|
newElement.classList.add("short-version")
|
|
element.classList.add("long-version")
|
|
|
|
let more =document.createElement("a");
|
|
more.textContent= " show more";
|
|
more.style.cursor="pointer"
|
|
more.onclick= function(){
|
|
element.style.display=display;
|
|
newElement.style.display="none";
|
|
}
|
|
|
|
let less =document.createElement("a");
|
|
less.textContent= " show less";
|
|
less.style.cursor="pointer"
|
|
less.onclick= function(){
|
|
element.style.display="none";
|
|
newElement.style.display=display;
|
|
}
|
|
|
|
|
|
newElement.appendChild(more)
|
|
element.appendChild(less)
|
|
|
|
element.parentNode.insertBefore(newElement, element.nextSibling)
|
|
element.style.display="none";
|
|
}
|
|
|
|
|
|
|
|
|
|
</script>
|
|
{{end}} |