使用Joomla自定义输出模块显示某个类别的文章,但空间有限。
以下是测试网站:http://cshtest.camdendiocese.org/
在页脚中,您会看到4列中的第3列有数据。它使用JavaScript向前和向后滚动。但正如你所看到的那样,它有4列,所有这些列在不同的类别上都是一样的。
我在创建其他列时遇到问题,因为它们都需要使用单独的数据项,因此需要单独的模块。我试图创建一个对象但是已经停止在PHP中指定一个JavaScript对象。
以下是正在运行的JavaScript:
// This script provides forward and backward paging for article intros in footer-1
// create an array of strings
// Each array element is initalized at this time to establish global scope
var mytexts = [];
mytexts[0] = "<h2>this is text string one</h2>";
mytexts[1] = "<h2>this is text string two</h2>";
mytexts[2] = "<h2>this is text string three</h2>";
// initialize variables
var txtNum = 0;
var txtLength = mytexts.length - 1;
// function to change string
function changeText(direction, col) {
// get next text number
txtNum = txtNum + direction;
// make sure we loop
if (txtNum > txtLength) {
txtNum = 0;
}
if (txtNum < 0) {
txtNum = txtLength;
}
// change the src attribute of the image
var colx = "col-" + col;
document.getElementById( colx ).innerHTML = mytexts[txtNum];
return false; // prevent default link
}
这是我尝试创建对象的构造函数:
function CatArticles(x0, x1, x2) {
// This script provides forward and backward paging for article intros in footer-1
// create an array of strings
// Each array element is initalized at this time to establish global scope
this.mytexts = [];
this.mytexts[0] = x0;
this.mytexts[1] = x1;
this.mytexts[2] = x2;
// initialize variables
this.Num = 0;
this.txtLength = this.mytexts.length - 1;
this.changeText = changeText;
}
// function to change string
function changeText (direction, col) {
// get next text number
this.Num = this.Num + direction;
// make sure we loop
if (this.Num > this.txtLength) {
this.Num = 0;
}
if (this.Num < 0) {
this.Num = this.txtLength;
}
// change the src attribute of the image
var colx = "col-" + col;
document.getElementById( colx ).innerHTML = this.mytexts[this.Num];
return false; // prevent default link
}
我可以在PHP中使用脚本标记来实例化该对象,但是无法想到如何获取在html中创建的变量以进行输出。你有建议或方法吗?
答案 0 :(得分:0)
如果我理解得很好,考虑到它们是两个不同的脚本,服务器端和客户端另一个,解决方案是在页面已经由php生成之后使用ajax进行交互。